ci(Mergify): configuration update

Signed-off-by: Deirdre Connolly <null>
This commit is contained in:
Deirdre Connolly 2022-06-14 20:28:31 -04:00
parent e6d5afdfb2
commit 1d5740f8ec
1 changed files with 88 additions and 0 deletions

88
.mergify.yml Normal file
View File

@ -0,0 +1,88 @@
queue_rules:
- name: hotfix
# Allow to update/rebase the original pull request if possible to check its mergeability,
# and it does not create a draft PR if not needed
allow_inplace_checks: True
allow_checks_interruption: False
speculative_checks: 1
batch_size: 5
# Wait a short time to embark hotfixes together in a merge train
batch_max_wait_time: "2 minutes"
conditions:
# Mergify automatically applies status check, approval, and conversation rules,
# which are the same as the GitHub main branch protection rules
# https://docs.mergify.com/conditions/#about-branch-protection
- base=main
- name: high
allow_inplace_checks: True
allow_checks_interruption: True
speculative_checks: 1
batch_size: 5
# Wait for a few minutes to embark high priority tickets together in a merge train
batch_max_wait_time: "5 minutes"
conditions:
- base=main
- name: low
allow_inplace_checks: True
allow_checks_interruption: True
speculative_checks: 1
batch_size: 5
# Wait a bit longer to embark low priority tickets together in a merge train
batch_max_wait_time: "10 minutes"
conditions:
- base=main
pull_request_rules:
- name: move to hotfix queue when CI passes with 1 review and not WIP targeting main
conditions:
# This queue handles a PR if:
# - it targets main
# - is not in draft
# - does not include the do-not-merge label
# - is labeled with Critical priority
- base=main
- -draft
- label!=do-not-merge
- 'label~=^P-Critical'
actions:
queue:
name: hotfix
method: squash
- name: move to high queue when CI passes with 1 review and not WIP targeting main
conditions:
# This queue handles a PR if:
# - it targets main
# - is not in draft
# - does not include the do-not-merge label
# - is labeled with High or Medium priority
- base=main
- -draft
- label!=do-not-merge
- or:
- 'label~=^P-High'
- 'label~=^P-Medium'
actions:
queue:
name: high
method: squash
- name: move to low queue when CI passes with 1 review and not WIP targeting main
conditions:
# We don't need to check priority labels here, because the rules are evaluated in order:
# https://docs.mergify.com/configuration/#pull-request-rules
#
# This queue handles a PR if:
# - it targets main
# - is not in draft
# - is labeled with Low or Optional priority, or does not have a priority label,
# including automated dependabot PRs.
- base=main
- -draft
- label!=do-not-merge
actions:
queue:
name: low
method: squash