如何管理需要针对多个分支运行的jenkins作业?

时间:2012-07-16 15:40:18

标签: jenkins jenkins-plugins

假设您有5个不同的jenkins作业,这些作业在不同条件下执行(触发),但现在您希望将使用范围扩展到其他分支。

只是复制作业会造成真正的维护混乱,因为分支的数量很大且永久性变化,但您仍然希望能够编辑作业模板。

作业之间唯一不同的是源控制分支,而不是你运行它们。

因此,将它们作为不同的工作运行是有意义的,但您仍然希望能够在一个地方重新配置作业。

1 个答案:

答案 0 :(得分:1)

对于不需要由SCM更改触发的构建,最简单的方法是使用运行在分支名称上的 BRANCH 轴的多配置(矩阵)构建。

对于由SCM更改触发的构建,添加 BRANCH 参数并编写一个后提交钩子,该钩子将触发构建,并正确实例化 BRANCH 。或者,写入短触发作业 - 每个分支一个 - 将轮询SCM并使用相应的 BRANCH 参数调用主作业。触发作业应该相同,但 BRANCH 参数除外,该参数设置为分支名称作为默认值。

最大的缺点是你无法立即区分失败的分支和的分支,但这是一个很小的代价。

有可能迟早你需要区分分支机构。如果差异相对较小,您可以使用Run Condition Plugin