ci: set up Mergify merge queue#17
Merged
Merged
Conversation
998558b to
136bcbd
Compare
Two-queue flow: human PRs use the default queue (2 approvals + CI green); bottle publish PRs and dependabot bumps auto-merge without review. - .mergify.yml: extends .github; bottle / automated updates / default queues, with merge protections that exempt the bottle PR from CI and review. - publish.yml: open a bottle/<version> PR instead of pushing to main, with a bottle/* loop-breaker so the bottle PR's own merge doesn't re-trigger. - tests.yml: add an all-greens aggregate check for the merge protections. - dependabot.yml: chore prefix so bump titles pass the conventional-commit check. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Change-Id: I69136e6928bb079283bc6c30ed07c57cab3b26d0
136bcbd to
209b8e8
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.
Summary
Sets up the Mergify merge queue (MRGFY-7564). Two-queue flow:
defaultqueue, gated by 2 approvals + CI green (all-greens).publish.yml) →bottlequeue, auto-merged with no approval and no CI — they only add the precompiledbottle doblock toFormula/mergify-cli.rb.automated updatesqueue, auto-merge after CI.Changes
.mergify.yml(new) —extends: .github; three queues + merge protections that exempt the bottle PR from CI/review viaif: -head ~= ^bottle/.publish.yml— opens abottle/<version>PR instead of pushing the bottle commit directly tomain, plus a loop-breaker so the bottle PR's own merge doesn't re-trigger publishing.tests.yml— adds anall-greensaggregate check (Mergifyio/gha-mergify-ciwait-jobs) so protections can require one stable check name.dependabot.yml—chorecommit prefix so bump titles satisfy the inherited conventional-commit protection.Follow-up (NOT in this PR)
After merge, the
mainruleset (17310728) is tightened separately to require a pull request (0 approvals — enforced by Mergify now) with the Mergify App as bypass actor.Test Plan
mergify config validate -f .mergify.yml→ validactionlinton both workflows → cleanruby -ryamlondependabot.yml→ validpublish.yml→ opens abottle/*PR that thebottlequeue auto-merges with no review;publish.ymlre-trigger no-ops (loop-breaker)chore: bump …) auto-merges after CI with no approval🤖 Generated with Claude Code