2015-09-23 43 views
0

我目前在Jenkins中設置了幾個持續集成管道。我已經安裝了所有用於構建和可視化管道的插件,並讓它們工作,但作業配置中有很多冗餘。在Jenkins中使用不同參數在同一作業中創建單獨的管道

我有2個Git分支,master和development,以及每個管道。當提交到相應的分支時觸發它們。每個管道必須執行同樣的任務:

  • 構建代碼
  • 提供系統
  • 部署文物
  • 運行集成測試
  • 發佈文物

目前,我有這些工作中的每一個都有兩份副本,一份給主,一份給發展。

我知道我可以參數化這些作業,但是如果我這樣做了,據我所知,它們將在Build Pipeline和Delivery Pipeline插件視圖中顯示爲一個管道,然後很難看到每個管道的獨立狀態。

有誰知道我怎樣才能創建單獨的管道使用相同的工作,但具有不同的參數?也歡迎任何替代方法的建議。

回答

1

您可以使用Job DSL Plugin在腳本中維護作業配置,並從該配置生成多個管道。

一個作業DSL腳本生成兩條管道是這樣的:

['master', 'develop'].each { branch -> 
    job("${branch}-compile") { 
    scm { 
     git("https://repo.example.org/foo.git", branch) 
    } 
    steps { 
     maven('verify') 
    } 
    publishers { 
     downstream("${branch}-provision") 
    } 
    } 

    job("${branch}-provision") { 
    // ... 
    } 

    buildPipelineView("${branch}-pipeline") { 
    selectedJob("${branch}-compile") 
    } 
} 
+0

唉唉 - 太棒了!謝謝@daspilker! –

相關問題