feat(release): nightly-gated rc-cutting and promotion with a dispatch test vector#380
Merged
Merged
Conversation
… test vector Move cascade's release cadence off per-merge and onto a green nightly. Add an opt-in release_trigger=dispatch manifest field so the generated orchestrate omits its push trigger (example repos keep push; only cascade opts in). Add nightly-release.yaml: a scheduled gate that runs only when code or requisite manifest files changed since the last final release, cuts the candidate rc, and lets the staged fleet and auto-promote publish only on green. It also exposes a workflow_dispatch vector with force (bypass the change-skip) and dry_run (cut a dryrun-tagged prerelease that runs the full fleet but is frozen out of publication by auto-promote's rc-only gate) so the whole path is testable on demand. Part of #373; closes #375. Signed-off-by: Joshua Temple <joshua.temple@stablekernel.com>
aeda554 to
05248e5
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Moves cascade's release cadence off per-merge and onto a green nightly, with an on-demand test vector.
release_trigger=dispatchmanifest field makes the generated orchestrate omit itspush:trigger. Example repos keep push (opt-in; only cascade sets it). TDD unit tests + e2e scenario 40; orchestrate regenerated (drift clean).ci.statesubtree); cuts the candidate rc; the staged fleet and auto-promote publish only on green. Exposes aworkflow_dispatchvector withforce(bypass the change-skip) anddry_run(cut a-dryrun.Nprerelease that runs the full fleet but is frozen out of publication).-rc.OR-dryrun.so a dry-run runs the full staged fleet.-rc.-only publish gate rejects-dryrun., so dry-run never publishes.Notes
-dryrun.Ntag directly (the design's sanctioned equivalent) becausecascade manage-releaseparses only-rc.versions; dry-run exercises cut to Release to fleet to promote-gate, the new wiring, not orchestrate's own jobs (unchanged).Proof before trust: a
force=true dry_run=truedispatch cuts a dryrun prerelease, runs all 11 repos staged, and auto-promote no-ops (no final release). Part of #373; closes #375.