---
pull_request_rules:
  - name: remove outdated approvals
    conditions:
      - base=master
    actions:
      dismiss_reviews:
        approved: true
        changes_requested: false
  - name: automatic merge
    conditions:
      - label!=do-not-merge
      - base=master
      - "#approved-reviews-by>=2"
      - "#changes-requested-reviews-by=0"
      - status-success=check
      # each test should be listed separately, do not use regular expressions:
      # https://docs.mergify.io/conditions.html#validating-all-status-check
      - status-success=test-suite (mimic)
      - status-success=test-suite (nautilus)
      - status-success=test-suite (octopus)
    actions:
      merge:
        method: rebase
        rebase_fallback: merge
      dismiss_reviews: {}
      delete_head_branch: {}
  - name: ask to resolve conflict
    conditions:
      - conflict
    actions:
      comment:
        message: "This pull request now has conflicts with the target branch.
        Could you please resolve conflicts and force push the corrected
        changes? 🙏"

---
pull_request_rules:
  - name: remove outdated approvals
    conditions:
      - base=master
    actions:
      dismiss_reviews:
        approved: true
        changes_requested: false
  - name: automatic merge
    conditions:
      - label!=do-not-merge
      - base=master
      - "#approved-reviews-by>=2"
      - "#changes-requested-reviews-by=0"
      - status-success=check
      # each test should be listed separately, do not use regular expressions:
      # https://docs.mergify.io/conditions.html#validating-all-status-check
      - status-success=test-suite (mimic)
      - status-success=test-suite (nautilus)
      - status-success=test-suite (octopus)
    actions:
      merge:
        method: rebase
        rebase_fallback: merge
        strict: smart
        strict_method: rebase
      dismiss_reviews: {}
      delete_head_branch: {}
  - name: ask to resolve conflict
    conditions:
      - conflict
    actions:
      comment:
        message: "This pull request now has conflicts with the target branch.
        Could you please resolve conflicts and force push the corrected
        changes? 🙏"

Use Smart-mode for "Strict Merge" to enable automatic rebase
Use Smart-mode for "Strict Merge" to enable automatic rebase

Enabling Smart-mode for "Strict Merge" causes Mergify to do a rebase of
the PR before merging. The rebase will trigger CI runs again, and
merging will be done only when the CI results are successful.

See-also: https://docs.mergify.io/actions.html#merge
Signed-off-by: Niels de Vos <7bda0c0ee7f47171cc808e9e60292cbc5d8140dd@redhat.com>
