Av1an/.mergify.yml

83 lines
2.3 KiB
YAML

pull_request_rules:
- name: automatic merge for main when CI passes and approved
conditions:
- "#approved-reviews-by>=1"
- or:
# Unfortunately, we cannot just say "all CI must pass".
# This is not a bot limitation, but a limitation in Github itself.
- and:
- check-success=all-tests
- check-success=docker
- check-success=SonarCloud Code Analysis
# Auto-merge in the case where tests were not run
# because no source files were modified
- and:
- -files~=^av1an-cli/
- -files~=^av1an-core/
- -files~=^src/
- -files~=^Cargo.*
- -files~=^Dockerfile
- base=master
actions:
queue:
name: default
method: squash
rebase_fallback: none
update_method: rebase
- name: automatic merge for stable backports when CI passes
conditions:
- or:
- and:
- check-success=all-tests
- check-success=docker
- check-success=SonarCloud Code Analysis
- and:
- -files~=^av1an-cli/
- -files~=^av1an-core/
- -files~=^src/
- -files~=^Cargo.*
- -files~=^Dockerfile
- base=stable
- or:
- "#approved-reviews-by>=1"
- author=mergify[bot]
actions:
queue:
name: default
method: rebase
rebase_fallback: none
update_method: rebase
- name: copy patches to stable branch
conditions:
- base=master
- label!=unstable
actions:
backport:
branches:
- stable
- name: assign code owners to stable merge conflicts
conditions:
- conflict
- base=stable
actions:
assign:
add_users:
- master-of-zen
- redzic
- shssoichiro
queue_rules:
- name: default
conditions:
- or:
- and:
- check-success=all-tests
- check-success=docker
- check-success=SonarCloud Code Analysis
- and:
- -files~=^av1an-cli/
- -files~=^av1an-core/
- -files~=^src/
- -files~=^Cargo.*
- -files~=^Dockerfile