Merge pull request #9898 from haskell/mergify/bp/3.12/pr-9865
[cabal.git] / .github / mergify.yml
blobb0dbe1033b8296d99e4b68c8797117808643e797
1 pull_request_rules:
3   # implementing PR delay logic: apply a label after 2 days of inactivity
4   # the label will allow Mergify to merge (see #8442, #8448)
5   - actions:
6       label:
7         add:
8           - merge delay passed
9     name: Wait for 2 days before validating merge
10     conditions:
11       - updated-at<2 days ago
12       - or:
13         - label=merge me
14         - label=squash+merge me
15         - label=merge+no rebase
16       - '#approved-reviews-by>=2'
18   # rebase+merge strategy
19   - actions:
20       queue:
21         name: default
22         # Merge into master with a merge commit
23         method: merge
24         # Update the pr branch with rebase, so the history is clean
25         update_method: rebase
26     name: Put pull requests in the rebase+merge queue
27     conditions:
28       - base=master
29       - label=merge me
30       - label=merge delay passed
31       - '#approved-reviews-by>=2'
33   # merge+squash strategy
34   - actions:
35       queue:
36         name: default
37         method: squash
38         # both update methods get absorbed by the squash, so we use the most
39         # reliable
40         update_method: merge
41     name: Put pull requests in the squash+merge queue
42     conditions:
43       - base=master
44       - label=squash+merge me
45       - label=merge delay passed
46       - '#approved-reviews-by>=2'
48   # merge+no rebase strategy
49   - actions:
50       merge:
51         method: merge
52     name: Merge "merge+no rebase" pull requests directly (without a queue)
53     conditions:
54       - base=master
55       - label=merge+no rebase
56       - label=merge delay passed
57       - '#approved-reviews-by>=2'
59   # rebase+merge strategy for backports: require 1 approver instead of 2
60   - actions:
61       queue:
62         name: default
63         # Merge with a merge commit
64         method: merge
65         # Update the pr branch with rebase, so the history is clean
66         update_method: rebase
67     name: Put backports in the rebase+merge queue
68     conditions:
69       - label=merge me
70       - base!=master
71       - body~=backport
72       - '#approved-reviews-by>=1'
74   # backports should be labeled as such
75   - actions:
76       label:
77         add:
78           - backport
79     name: Label backports as such
80     conditions:
81       - body~=automatic backport
83 queue_rules:
84   - name: default
85     update_bot_account: Mikolaj