summaryrefslogtreecommitdiff
path: root/.github/mergify.yml
blob: 97d6e46248b30e944a9ea8d57ed93a4715043def (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# yaml-language-server: $schema=https://docs.mergify.com/configuration/file-format/
# Mergify configuration for vyos/vyos-documentation.
#
# Inherits the central baseline from vyos/mergify:.mergify.yml. The central
# baseline provides:
#   - `defaults.actions.backport.ignore_conflicts: false`
#   - `pull_request_rules` → label conflicting PRs with `conflicts`
#   - `commands_restrictions` → restrict @Mergifyio slash commands to
#     @vyos/maintainers + vyosbot
#
# Rollout context: T8782 (Mergify central-config rollout). See
# https://vyos.dev/T8782 and the Confluence spec at
# https://vyos.atlassian.net/wiki/spaces/VYOS/pages/849477640.
#
# Local overrides for this repo go below the `extends:` line — any keys
# defined here merge with (or, for same-name rules, replace) the inherited
# configuration per Mergify's `extends:` semantics.
#
# T8966 (2026-06-06): the former T-ID-format opt-out override (rule
# `Flag T-ID format violation in PR title or commit messages`) was removed.
# The central config no longer enforces strict `T<digits>:` format — that
# moved per-product-repo — so docs (a non-product repo) inherits only the
# generic loose-title + body checks, no override needed.
#
# T8937 (2026-06): replaced the eps1lon `check-open-prs-conflict.yml` GHA
# caller (which ran `eps1lon/actions-label-merge-conflict` to label + comment
# on conflicting PRs) with Mergify. The inherited central rule `Label
# conflicting pull requests` already toggles the `conflicts` label; the local
# additive rule below restores the contributor-facing "please resolve" comment
# the GHA used to post. (The GHA's clean-side "conflicts resolved" comment has
# no Mergify equivalent — there is no "was-conflicting-now-clean" predicate —
# so it is intentionally not replicated.)

extends: mergify
merge_protections_settings:
  reporting_method: check-runs

pull_request_rules:
  # Additive (distinct name from the inherited `Label conflicting pull
  # requests` rule, so both fire): post a one-time comment when a PR enters
  # conflict, mirroring the retired eps1lon GHA's dirty-side notice. Mergify's
  # comment action dedupes per rule+message, so it posts once when the PR
  # becomes conflicting, not on every re-evaluation.
  - name: Comment on conflicting pull requests
    description: Notify the author when their PR develops a merge conflict.
    conditions:
      - conflict
      - '-closed'
    actions:
      comment:
        message: >-
          @{{author}} this pull request has conflicts. Please resolve them
          before we can evaluate the pull request.