Jenkins git插件,如何触发仅在某些标签上构建?

时间:2020-09-09 00:06:17

标签: git jenkins

仅在创建的标签具有特定格式时,我才希望在Jenkins中触发构建。我的代码在Gitlab中,现在它的工作方式是这样的。 当我在master分支上创建标签时,Jenkins插件将触发stagingprod 2种环境的作业。我正在使用refs/tags/${TAGNAME}作为Jenkins作业内“分支指定符”(“ any”为空白)字段的参数。有时候,我需要在staging上部署代码,但不必将其发布到prod上,因此我必须手动禁用生产作业。我还使用TAGNAME作为参数来手动部署特定标签。

我测试了是否可以使用正则表达式并使用staging格式为v1.0.0-rc和使用prod格式为v1.0.0创建标签。我创建了此正则表达式:^(?!.*(-rc)).*,但是无论如何它都不会触发。然后我发现我需要包括TAGNAME变量,但是现在正则表达式将始终触发,因为该变量包含来自Gitlab ex:v1.0.0-rc

的标记

如果要测试正则表达式,可以使用以下示例:

refs/tags/v1.0.1
refs/tags/v1.0.1-rc
refs/tags/v1.0.1^{commit}
refs/remotes/origin/refs/tags/v1.0.1^{commit}
refs/remotes/origin/refs/tags/v1.0.1-rc^{commit}
v1.0.1
v1.0.1-rc

它应该只匹配-rc行。

但是在这一点上,我认为这不是最好的方法。有没有一种方法可以基于特定的标签命名来触发此操作?

0 个答案:

没有答案