2017-10-08 83 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函數。

雖然這仍然需要您更新所有回購,但在組織中引入管道可能是更好的起點。

相關問題