如何设置GitLab合并规则:特定文件路径变更需审批及评审人
配置合并请求强制评审规则:针对prod路径文件变更
需求
当合并请求的差异内容包含/prod/路径下的文件变更时,自动触发强制评审/审批要求,未完成评审则无法合并。
适用场景
- 仓库为K8s配置仓库,包含staging、dev、prod三个环境的YAML配置文件
- 对prod环境的配置变更需严格管控,任何涉及
/prod/路径的修改必须经过指定评审人审批
完整配置示例(以GitLab为例)
# 合并请求审批规则配置 approval_rules: - name: "Prod环境变更强制评审" # 触发条件:仅在合并请求事件中,且变更了prod路径下的文件 rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' changes: - "**/prod/**/*" # 设置需要的审批人数 approvals_required: 1 # 指定强制评审人(替换为实际团队成员用户名) users: - 张XX - 李XX
配置说明
changes字段:使用通配符**/prod/**/*匹配所有包含prod路径的文件(包括子目录下的文件),确保所有prod相关修改都会触发规则approvals_required:可根据团队需求调整审批人数,比如设置为2则需要两位评审人同意users:明确指定必须参与评审的成员,避免无关人员审批
如果仅需在CI流水线中触发相关检查(而非原生审批规则),可使用以下规则段:
rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' changes: - "**/prod/**/*"
内容的提问来源于stack exchange,提问作者pratik
相关产品推荐
相关产品推荐

