Repository navigation
Expand file tree
/
Copy pathrepos.yaml
More file actions
52 lines (48 loc) · 2.36 KB
/
Copy pathrepos.yaml
File metadata and controls
52 lines (48 loc) · 2.36 KB
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
# =========================================
# repos.yaml
# -----------------------------------------
# 用于定义组织/仓库与事件模板、通知对象的映射关系
# 支持通配符,默认按顺序取首条匹配;server.match_all_rules: true 时会依次处理所有匹配规则
#
# 可选:每条匹配可单独配置一个 `secret`,用于校验该 GitHub Webhook 的签名。
# 留空则回退到 server.yaml 中的全局 `server.secret`。
# 这样不同仓库/组织的 Webhook 可以使用各自独立的密钥。
# =========================================
repos:
# 示例:针对特定项目定义更详细监听
- pattern: "CompPsyUnion/motion-vote-backend"
events:
push: # 直接引用 events.yaml 中的事件
branches: # 可以进一步细化,覆盖 events.yaml 中的默认配置
- main
- develop
pull_request: # 同理
types:
- opened
- closed
- reopened
issues: # 如果不细化,直接监听所有 types
release:
notify_to:
- ops-team # 引用 feishu-bots.yaml 的 alias. 引号可加可不加
- "https://open.feishu.cn/open-apis/bot/v2/hook/zzzzzzz" # 这里是 dev-team, 但直接使用完整 URL 也可以。如有冲突 alias 优先
# secret: "this-repo-only-secret" # 可选:仅校验该仓库 Webhook 的密钥;留空则用全局 server.secret
# 示例:匹配实验性项目(使用 glob 模式)
- pattern: "CompPsyUnion/experimental-*"
events:
all: # 直接应用 event_sets: 中定义的的模板。如果有命名重合,优先使用自定义模板
notify_to:
- dev-team # 引用 feishu-bots.yaml 的 alias
# 示例:匹配所有个人项目
- pattern: "hnrobert/*"
events:
custom: # 直接应用 event_sets: 中定义的的模板
notify_to:
- ops-team # 引用 feishu-bots.yaml 的 alias
# 示例:匹配所有仓库(放在最后,作为兜底配置,已经被匹配过的仓库会被拦截,不会用到这里)
- pattern: "*"
events:
basic: # 应用 events.yaml 内 event_sets: 中定义的的模板。可以理解将 basic 里的事件展开添加到该仓库监听
project: # 也可以同时叠加更多事件。注意后添加的会覆盖先添加的的同类事件配置
notify_to:
- org-notify # 引用 feishu-bots.yaml 的 alias