如何在构建触发器中排除变更集?

时间:2016-04-05 02:41:51

标签: bamboo

我在Bamboo(5.10.0,build 51017)中有一个构建计划,在构建过程结束时,我将更改推送到我的Git存储库(Bitbucket Server),并带有以下格式的消息:{{ 1}}。

我的构建计划密钥为<build key>: Commit performed by the build server.,提交消息始终以构建的密钥开头,例如AAB-ACAAB-AC7-JOB1-75)。

我在我的存储库的高级选项排除更改集字段中尝试了许多不同的正则表达式,但只要构建完成,就会触发新的构建。< / p>

以下是我尝试过的模式的几个例子:

  • ${bamboo.buildResultKey}
  • ^AAB-\S*-\S*-\d*:
  • ^AAB-AC\S*-\S*-\d*:.*$
  • ^AAB-AC
  • AAB-AC
  • ^AAB-AC\S*-\S*-\d*:.*\n
  • ^AAB-AC.*$
  • ^AAB-AC.*-.*-.*:

对于每个正则表达式,每当我手动运行构建时,在构建完成后立即启动新构建,并且Bamboo服务器进入无限循环并无休止地构建我的应用程序。

如何让Bamboo忽略我的构建计划执行的提交?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

其中大多数应该有用,我们在&#34;排除变更集&#34;中使用^Tag:.*$排除#34;标签:v1.0.0&#34;从触发构建。

这在Bamboo 4中有效,但是自从我们升级到5.10.2 build 51019后它没有用。所以我的猜测是这是Bamboo中的一个bug

答案 1 :(得分:0)

我终于成功完成了这项工作......

  • 我的计划中有分支机构,我发现分支计划有自己的存储库定义,并带有自己的 Exclude changesets 设置。
    • 所以我尝试了所有正则表达式组合,因为使用了分支计划中指定的值,而不是我在主计划中定义的值......
  • 似乎^字符用于否定正则表达式,而不是匹配字符串的开头...
    • 因此模式^AAB-AC似乎与不包含AAB-AC 的所有内容相匹配
      • 我推送到没有包含AAB-AC的服务器的所有提交都被忽略了
      • 我的构建计划推送的所有提交都触发了新构建

所以我修复了我的正则表达式并更新了所有的分支计划,一切似乎都正常。

感谢您的帮助,

祝你好运!