Skip to content

Promote staging to master: numbered release tags (INFRA-511) - #7

Merged
rkkmkkfx merged 17 commits into
masterfrom
staging
Oct 9, 2026
Merged

rkkmkkfx merged 17 commits into
masterfrom
staging

Conversation

@rkkmkkfx

@rkkmkkfx rkkmkkfx commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Merge with a merge commit (gh pr merge --merge). Do NOT squash or rebase.

Squashing diverges the two long-lived branches and the next promotion re-shows the whole history.

Merging this deploys PRODUCTION immediately.

The new GitHub Actions workflow (.github/workflows/deploy.yml) runs on every push to master: builds the jar, copies it to /apps/reference-prod/ on api-bible-docs (104.236.66.244) and worker (68.183.148.118), restarts reference-prod on both. Prod currently runs a Feb 2019 jar (matches today's master HEAD 59fa293), so this ships everything below, not just the dropdown fix.

What changes on prod (17 commits)

  • Fix (INFRA-511): released-version? accepts v7/v8 + N.N.N tags from major 9 up; v9, other branches and old 8.x.x tags stay hidden (+ unit test). Checked against the real content-repo refs: old filter kept v7 v8 v9, new keeps 9.0.0 v7 v8.
  • Footer redesign: X and Medium icons, new AnyChart font URL (_footer.scss, main_page.clj, common.clj).
  • Notifications: skype/slack removed; discord.clj added, notifier.clj is no-op stubs; config spec no longer requires notification sections. Prod's existing [notifications.*] TOML sections still validate.
  • Deps: adds commons-lang3 3.8.1.
  • CI: Travis replaced by GitHub Actions; pinned host keys.
  • No DB schema changes (scheme.sql untouched).
  • staging code has run on stg since Mar 2025; the stg jars were redeployed from this code today.

Heads-up

  • The next prod build removes v9 from the prod version list (the build deletes versions that are no longer actual). 9.0.0 only appears once the content repo has it as a tag (see below).
  • Content repos (docs/api.anychart.com): master + 9.x.x tags and removal of the same-named 9.0.0/v9 branches are still pending.
  • reference-engine adoc/core.clj:196 still hardcodes "v8" for tern/json/dts setup.

Prep done

  • Prod jars backed up (SHA-256 verified) on both hosts: *.prod-bak-20261009-1738
  • master has no commits staging lacks; merge is conflict-free
  • Prod TOMLs identical to the repo on both hosts

Rollback (per host)

cp -p /apps/reference-prod/reference-3.0.0-standalone.jar.prod-bak-20261009-1738 /apps/reference-prod/reference-3.0.0-standalone.jar && supervisorctl restart reference-prod

Test plan

  • TODO: merge with a merge commit; watch the deploy run
  • TODO: supervisorctl status reference-prod RUNNING on both hosts; api.anychart.com returns 200 and the version list is correct
  • TODO: promote docs-engine afterwards (separate PR)

JIRA: INFRA-511

🤖 Generated with Claude Code

ilevd and others added 17 commits November 8, 2018 15:50
Use a grid layout for better responsiveness and visual appearance.
Update styles for improved icon presentation and hover effects.
The footer now contains social media links and a copyright notice.
`.clj-kondo` is added to gitignore to prevent it from being
committed.
released-version? only matched ^v\d+$, so release tags such as 9.0.0 were
filtered out of the build and the version dropdown. Accept legacy v7/v8
branches plus N.N.N tags from major 9 up; v9+ and older 8.x.x tags stay hidden.

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Travis is gone, so merges to staging/master no longer deployed. Build the
uberjar, scp it to api-bible-docs and worker, restart the supervisor
program, as .travis.yml did. Needs repo secret DEPLOY_SSH_KEY.

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
The Travis-era keys no longer match, so strict host checking refused the
connection. Keys taken from the live hosts and cross-checked against the
fingerprints already trusted in a maintainer's known_hosts.

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-09T17:41:33.293944Z 6d40ef9 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6d40ef90f0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"Legacy v7/v8 branches, plus release tags 9.x.x and up (never v9+).
Older 8.x.x tags exist in the content repos and must stay hidden."
[version-key]
(boolean (re-matches #"^(?:v[78]|(?:9|[1-9]\d+)\.\d+\.\d+)$" version-key)))

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Distinguish release tags from same-named branches

When a content repository contains a remote branch such as origin/9.0.0, this predicate treats it as a released version even if no 9.0.0 tag exists. reference.git/remote-branches combines branch and tag refs and strips both origin/ and tags/ before version-branches-with-hashes calls this name-only predicate, so the generator can build and publish unreleased branch content in the production version list. Preserve the ref type and apply the new semantic-version rule only to tags.

Useful? React with 👍 / 👎.

Comment on lines +167 to +170
```

Configuration required:
```clojure

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Remove Markdown text from the Clojure source

When this Discord namespace is required, the raw Markdown fence and configuration prose are read as Clojure forms, with the final backticks leaving an incomplete reader expression, so namespace loading fails before any notification function can run. This currently remains hidden because the notifier does not require the namespace, but it makes the newly added Discord implementation unusable when wired in.

Useful? React with 👍 / 👎.

@rkkmkkfx
rkkmkkfx merged commit 61a3af2 into master Oct 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants