diff --git a/.mergify.yml b/.mergify.yml new file mode 100644 index 00000000..b55a40e1 --- /dev/null +++ b/.mergify.yml @@ -0,0 +1,54 @@ +pull_request_rules: + - name: automatic merge on CI success require review + conditions: + - status-success=Travis CI - Pull Request + - "#approved-reviews-by>=1" + - "#changes-requested-reviews-by=0" + - label!=block-merge + actions: + label: + add: + - github-actions + merge: + method: squash + strict: smart + + # if there is a conflict in a backport PR, ping the author to send a proper backport PR + - name: ping author on conflicts + conditions: + - conflict + actions: + comment: + message: This pull request has merge conflicts that must be resolved before it can be merged. @{{author}} please rebase it. https://rook.io/docs/rook/master/development-flow.html#updating-your-fork + + # automerge on master only under certain strict conditions + - name: automerge merge master with specific label and approvals with code change + conditions: + - author=mergify[bot] + - base=master + - "#approved-reviews-by>=1" + - "#changes-requested-reviews-by=0" + - label!=do-not-merge + - label=ready-to-merge + actions: + merge: + method: merge + strict: false + dismiss_reviews: { } + delete_head_branch: { } + + - name: automatic merge on CI success for TemplateControl + conditions: + - status-success=Travis CI - Pull Request + - label=merge-when-green + - label!=block-merge + actions: + merge: + method: squash + strict: smart + + - name: delete branch after merge + conditions: + - merged + actions: + delete_head_branch: { } diff --git a/README.md b/README.md index 11c101a7..2e84037f 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ [![management: perfekt👌](https://img.shields.io/badge/management-perfekt👌-red.svg)](https://github.com/lekterable/perfekt) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)](https://github.com/prettier/prettier) +![Mergify Status](https://img.shields.io/endpoint.svg?url=https://gh.mergify.io/badges/AlexRogalskiy/github-action-screenshots)