diff --git a/.mergify.yml b/.mergify.yml index 1c307dc2..d7a5f7f1 100644 --- a/.mergify.yml +++ b/.mergify.yml @@ -1,5 +1,9 @@ -# Mergify: policy lives in systemfsoftware/.github (.mergify.yml). This file only names this repo's CI checks. +# Mergify: policy lives in systemfsoftware/.github (.mergify.yml). This file names this repo's CI checks and the one rule that cannot be inherited: this repo's default branch is master. extends: .github +shared: + # Copied from the org file; `shared` is not inherited. Keep in step with its kiro_gate phase switch. + kiro_gate: &kiro_gate "approved-reviews-by = kiro-systemf[bot]" + not_queue_branch: ¬_queue_branch "-head ~= ^mergify/merge-queue/" queue_rules: - name: default # Checked on the PR itself before it enters the queue. @@ -14,3 +18,15 @@ queue_rules: merge_conditions: - check-success = gate / gate - check-success = nix flake check +pull_request_rules: + # Same name and conditions as the org rule, which matches base = main; a local rule of the same name replaces it. + - name: Queue when approved + conditions: + - base = master + - *not_queue_branch + - *kiro_gate + - "#changes-requested-reviews-by = 0" + - -draft + - -label = hold + actions: + queue: