2017-09-26 62 views
0

我正在使用Jenkins multibranch管道。 我藉助Pipeline語法生成器創建了一個Jenkins文件。 我的Jenkinsfile正在按預期完美工作。集中管理Jenkinsfile

但是現在我想集中管理這個Jenkinsfile,所以我不必將它複製到所有我的(git)回購站。 我看到有一些選項可以使用通用的groovy腳本,並將方法作爲模塊加載。 但是這意味着我必須用不同的語法重新編寫我的Jenkins文件?

我試過幾個選項,但都沒有成功。 例如,我已將jenkins文件添加到其自己的git repo中,並且已將該repo添加爲(代碼)回購的子模塊。 然後我試圖在詹金斯配置像在下面的圖片

這是前進的方向,有沒有任何(簡單)的方法來實現我想要完成的?

Jenkins configuration example

回答

0

詹金斯共享庫插件可以幫助你。退房docs

+0

我已經看過這個選項。但是編寫共享庫不能在Jenkins管道語法中完成?這意味着我必須學習並重新編寫迄今爲止創建的內容。我的團隊也需要學習如何做到這一點。我想有一個選擇,我可以使用管道語法,我不認爲我可以使用共享庫。 –

+0

您可以將Jenkins管道語法與共享庫一起使用 – herm

0

你是對的,但其他stackoverflow awnser幫助我解決了我的問題。奇怪的是我再也找不到它:(

總之:

我定義我的整個管道減速的全局變量(在文件中被稱爲無功\ soaPipeline.groovy)

def createSOAStandardDeclarativePipeline() { 
     node { 
      stage('checko..... 

添加。Jenkinsfile到代碼回購該文件包含以下行:

soaPipeline.createSOAStandardDeclarativePipeline() 

然後配置在詹金斯: jenkins configuration