Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion .github/workflows/orb-beta-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -88,12 +88,22 @@ jobs:
# `--verify-tag` GitHub Release step can run safely (see that workflow's own comments). Gated on
# steps.tag.outputs.created (not just due) so a no-op tag step -- for any reason -- never triggers a
# rebuild/republish of an existing GHCR image tag with different content.
#
# Dispatch against the TAG, not `main`: `main` is a floating ref, and this repo merges fast enough
# that a commit can land in the gap between the "Tag the new beta" step above pushing $TAG and this
# step's dispatch actually being processed by GitHub. `--ref main` would then resolve `github.sha`
# inside release-selfhost.yml to that NEWER commit, while $TAG (pushed moments ago, immutable) still
# points at the older one it was actually cut for -- tripping that workflow's own
# TAG_SHA-must-equal-RELEASE_SHA fail-safe and aborting the release. Dispatching against $TAG instead
# makes `github.sha` resolve to exactly the commit the tag points to, by construction, so the two can
# never disagree regardless of how many commits land on main afterward.
- name: Dispatch the ORB release build
if: steps.report.outputs.due == 'true' && steps.tag.outputs.created == 'true'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ steps.report.outputs.tag }}
VERSION: ${{ steps.report.outputs.version }}
run: gh workflow run release-selfhost.yml --ref main -f "version=${VERSION}" -f create_github_release=true
run: gh workflow run release-selfhost.yml --ref "$TAG" -f "version=${VERSION}" -f create_github_release=true

- name: Summarize
if: always()
Expand Down