blob: 2196523022d4467c4e813348e7eef8c560feba89 (
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
|
# yaml-language-server: $schema=https://docs.mergify.com/mergify-configuration-schema.json
# Mergify configuration for vyos/shim-signed.
#
# Inherits the central baseline from vyos/mergify (its .mergify.yml on the
# default branch). The central baseline provides:
# - conflict labeling (`conflicts`, `backport-conflict`)
# - convention-agnostic merge protections: loose PR-title gate
# (`invalid-title`), minimal-body gate (`invalid-body`, #body<80),
# and the WIP merge gate (`WIP`)
# - @Mergifyio command restrictions (org Maintainers + vyosbot)
#
# Onboarded to `extends` under the T8966 onboard-to-extends follow-up. The
# per-repo rule below opts this product repo into the strict T<digits>:
# convention. It is additive (a distinct rule name, not an `extends` override)
# and bot-excluded, identical to the 49-repo product fleet (IS-531).
extends: mergify
merge_protections_settings:
reporting_method: check-runs
pull_request_rules:
- name: Flag product T-ID format violation in PR title or commit messages
description: >
Product-repo convention: PR title and every commit's first line must
match `T<digits>: <text>` (optional `scope: ` prefix). Relocated from
the central config (T8966) so the T-ID convention is opt-in per product
repo. Name is intentionally distinct from any central rule name so this
stays additive (not an `extends:` override).
conditions:
- '-closed'
- '-merged'
- '-author~=\[bot\]$'
- 'author!=copilot-swe-agent'
- 'author!=vyosbot'
- or:
- '-title~=^(([a-zA-Z0-9\-_.]+:\s)?)T\d+:\s+[^\s]+.*'
- and:
- 'label!=legacy'
- 'commits[*].commit_message~=^(?!(([a-zA-Z0-9\-_.]+:\s)?)T\d+:\s+[^\s]+).*'
actions:
label:
toggle:
- invalid-task-id
|