ci: bump homolog versions on homolog merges#685
Conversation
|
Note Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0e72aac13f
ℹ️ 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".
| (github.event.workflow_run.head_branch == 'main' || | ||
| github.event.workflow_run.head_branch == 'homolog') && |
There was a problem hiding this comment.
Prevent duplicate homolog version jobs
For a normal dev→homolog merge, this workflow now runs twice: the new pull_request.closed trigger for homolog starts one version job, and the CI push on homolog starts this workflow_run path because .github/workflows/ci.yml runs on homolog pushes and the merge commit message contains /dev. Both jobs check out/push homolog and publish @homolog, so a single promotion can advance the build number twice or race on the same tag/branch; the homolog workflow_run path should be excluded or otherwise deduplicated against the PR trigger.
Useful? React with 👍 / 👎.
| # Always writes to `dev` regardless of trigger ref. Keep a single group to serialize. | ||
| group: version-dev | ||
| # Serialize per target branch so dev and homolog bumps cannot overwrite each other. | ||
| group: version-${{ github.event_name }}-${{ github.event.workflow_run.head_branch || github.event.pull_request.base.ref || github.ref_name }} |
There was a problem hiding this comment.
Serialize by the branch actually being pushed
This concurrency key is based on the event name and triggering branch, but the main workflow_run path still sets push_ref=dev. A dev PR merge (version-pull_request-dev) and a main promotion (version-workflow_run-main) can therefore run concurrently while both later push to refs/heads/dev; because both derive the next version from the same fetched tags before either push, one job can fail its atomic push/tag or require a rerun. This regresses the previous single version-dev serialization for all dev writers.
Useful? React with 👍 / 👎.
Why
HML images are canonically built from
homolog, and eachhomologPR merge must advance the Omni build/version number onhomologso operators can control exactly which source/build is deployed.The previous
version.ymlbehavior violated that:pull_request.closedonly watcheddev.workflow_runadmittedmainbut nothomolog.dev, even for non-dev triggers.That let the P7 code merge to
homologwithout a homolog-side version bump.Fix
homologin PR-merge version triggers.homologCI push runs.dev-> bump/pushdev, npm tagnext, release channeldevhomolog-> bump/pushhomolog, npm taghomolog, release channelhomologmain-> preserve existing behavior: latest/stable with bump carried ondevversion-devgroup.Local verification
Push-hook note
The local pre-push hook was run with Bun on PATH:
The single isolated failure is pre-existing/local dependency drift outside this workflow patch:
This PR changes only
.github/workflows/version.yml.