2017-10-08 52 views
0

创建詹金斯多分支管道工作是否有可能通过一个招聘DSL它通过,而不是Jenkinsfile包含每个“管道脚本”定义了工作创建多分支管道作业 Git仓库?从招聘DSL厂

我们希望避免在我们的每个100个Git存储库中生成和维护相同的Jenkinsfile(除了一些参数)。

目前我们正在使用由工厂作业播种的Job DSL作业的管道作业,但我们在多分支构建(特性分支)的时刻受到限制。所以我们想切换到多分支管道作业,但是我们在种植它们方面受到限制。

我知道我们可以使用Jenkins文件(项目的Git Repo),其中包含来自Jenkins的其他常见Jenkins文件,但这只是一种解决方法。

回答

0

只有管道作业可以将管道内联定义。多分支作业不能和JobDSL不能改变任何事情。

可能更好的选择是使用shared library。您可以配置Jenkins自动加载此库,以便所有回购站中的特定Jenkinsfile只需调用一个函数即可。

你可以例如看看的a Jenkins plugin一个Jenkinsfile - 它只调用从共享库中的函数:

buildPlugin() 

在你的情况(因为你写了一篇关于“除了一些参数”),该功能可以有一些参数可能会有所不同由不同的工作。在https://github.com/jenkins-infra/pipeline-library/blob/master/vars/buildPlugin.groovy中实现了buildPlugin函数。

虽然这仍然需要您更新所有回购,但在组织中引入管道可能是更好的起点。

相关问题