有没有办法使用多分支管道Jenkins插件自动构建标签?

有没有办法使用多分支管道Jenkins插件自动构建标签?,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,在Jenkins中创建了一个多分支管道之后,我可以很容易地告诉它轮询任何分支的更改或添加,它将自动为这些分支创建工作并构建这些分支。我告诉多分支作业也要发现标记,因此它会自动为每个标记创建作业,这很好 Jenkins有没有一种干净的方法来自动构建这些标记,而不是我手动触发它们?正如您在下面看到的,标记的作业就在那里,但我必须手动构建它 我会对此发表评论,但我没有足够的声誉。我相信这是一个复制品。请看我的答案,抄写在下面 简言之,如果您构建并安装了Jenkins插件,那么您可以添加一个build

在Jenkins中创建了一个多分支管道之后,我可以很容易地告诉它轮询任何分支的更改或添加,它将自动为这些分支创建工作并构建这些分支。我告诉多分支作业也要发现标记,因此它会自动为每个标记创建作业,这很好

Jenkins有没有一种干净的方法来自动构建这些标记,而不是我手动触发它们?正如您在下面看到的,标记的作业就在那里,但我必须手动构建它


我会对此发表评论,但我没有足够的声誉。我相信这是一个复制品。请看我的答案,抄写在下面

简言之,如果您构建并安装了Jenkins插件,那么您可以添加一个build Everything策略,该策略将自动构建标签


不自动触发已发现标记的构建似乎是根据设计而来的。Stephen Connolly为您可能会做的事情提供了解释和建议:

斯蒂芬·康诺利(Stephen Connolly)在6天前补充了一条评论

默认情况下不会生成标记(因为否则您可能会有 签出存储库时生成storm)以及更糟糕的是,订单标签 将被内置是不可预测的。。。你可能有一个詹金斯档案 它在构建标记时部署到生产环境中

分支api中有一个称为BranchBuildStrategy的扩展点 如果实现了,它将允许决定是否构建标记

看 对于如何创建这样一个扩展插件的起点。。。我 相信有一些工作在一个一个


正如@tommy ludwig所说,您需要一个额外的插件来提供构建策略;Stephen Connolly在他的原始帖子中发表了which等人提供的。

如果像我一样,您不在乎标签是否显示在单独的选项卡上,您只希望在构建各个分支时可以看到标签(这意味着您的标签将被构建),那么请执行以下操作:


在多分支管道的配置中,转到“分支源”、“Git”、“行为”,并添加“高级克隆行为”。默认情况下,添加此项时,您将看到选中了“Fetch tags”。瞧

我已经检查了“fetchtags”,但是标记仍然在各自的选项卡中,并且不是自动生成的。还有什么我需要做的吗?谢谢-这修复了我在一个作业中遇到的一个问题,该作业自动为它构建的Python包派生一个版本号(通过
setuptools scm
),版本派生自git标记:)