Repository navigation
Apply platform.yml only after the checks pass, and never cancel a pending apply - #3
Merged
Merged
Conversation
On a merge, ci.yml and platform.yml started side by side, so a commit could be approved and applied to the boxes while its lint, syntax or manifest checks were failing. ci.yml is now also a reusable workflow; platform.yml calls it for the commit and its apply job needs it, so the approval request only appears once every check has passed. A manual apply waits for them too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Dry runs and applies shared one concurrency group, and GitHub keeps only one pending run per group: pushing a pull request branch cancelled the apply of the #2 merge while it waited for approval. Each job now has its own group: dry runs per branch (a newer push replaces the older), applies in platform-apply (never cancelled by a pull request). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Two fixes to the
platformworkflow.1. Apply only after the repo checks pass
On a merge,
checks(ci.yml) andplatformstarted side by side, so a commit could be approved and applied to the boxes while its lint, syntax or manifest checks were failing.ci.ymlis also a reusable workflow (workflow_call). It has no event conditions or secrets, so it behaves the same when called.platform.ymlcalls it for the commit on a merge (and on a manual apply), andapplyneeds it (implicitsuccess(): every check job must pass).productionapproval request only appears once the checks are green.Cost: on a merge touching platform.yml's paths, the checks run twice (standalone and inside
platform); a job cannot wait on another workflow.2. A pull request's dry run can no longer cancel a pending apply
Dry runs and applies shared one workflow-level concurrency group, and GitHub keeps only one pending run per group. Pushing this branch cancelled the apply of the #2 merge while it was waiting for approval (nothing had run on the boxes). Concurrency is now per job:
platform-check-<ref>, a newer push to the same branch replaces the olderplatform-apply, never cancelled half-way; a newer merge waiting behind replaces an older one still waiting (latestmainwins)Merging
Merging this triggers a
platformrun (it changes the workflow file): checks first, then the approval, then platform.yml. That run replaces the cancelled one from #2.actionlintpasses on both workflows.🤖 Generated with Claude Code