如何在Bamboo YAML specs中禁用linked repository触发器?
Bamboo YAML Specs 禁用链接仓库自动触发构建方案
长期使用Bamboo YAML Specs管理构建计划时,若计划同时配置默认仓库与linked repository(链接仓库),会遇到默认仓库提交、新建分支触发构建符合预期,但链接仓库更新也会误触发构建的问题,且官方文档未明确标注对应配置项,UI导出YAML时也不会带出该开关的配置状态,可通过以下配置解决:
配置方法
Bamboo默认会为计划关联的所有仓库开启提交触发规则,要单独禁用指定链接仓库的触发能力,需要在对应仓库的配置层级显式声明空触发规则,不要在计划全局触发器段配置,避免影响默认仓库的正常触发逻辑:
- 定位YAML文件中
plan.repositories下的链接仓库配置块,注意区分默认仓库与链接仓库的配置段 - 在目标链接仓库的配置属性下添加
triggers: []配置,空数组代表该仓库不绑定任何触发规则,全Bamboo LTS版本兼容
配置示例
plan: key: PROJ-MAINBUILD name: 主业务线构建计划 # 原有全局触发器配置保持不变,维持默认仓库的触发规则 triggers: - polling: period: 180 repositories: # 默认仓库配置段,保持原有配置不修改 - main-code-repo: scope: global branch: main # 目标链接仓库配置段,添加禁用触发的配置 - shared-common-lib: scope: global # 关键配置:禁用该链接仓库的所有构建触发 triggers: []
注意:部分8.2以下版本的Bamboo对
triggers: none写法存在解析bug,会导致配置同步失败,使用空数组写法可避免该问题。
验证方式
配置推送到Bamboo生效后,进入对应构建计划的触发器配置页,查看仓库触发列表,即可看到对应链接仓库的触发开关已处于关闭状态,后续仅默认仓库的提交、新建分支事件会触发构建,链接仓库的更新不会再产生非预期的构建任务。
内容的提问来源于stack exchange,提问作者DutchJ
相关产品推荐
相关产品推荐

