我在不同的git倉庫中有A,B和C maven項目。 C取決於A和B.我有Jenkins作業,它們分別構建項目。但我想製作一個發行鏈。例如:在項目A發佈後,更改項目C中的依賴項版本並將其提交到回購站,同樣也觸發項目C的新版本。 如果項目B被釋放比做同樣的。更新項目C,提交和發佈。 你知道Jenkins的插件,它使這個更新依賴版本和承諾git?在Jenkins發佈鏈接
謝謝!
我在不同的git倉庫中有A,B和C maven項目。 C取決於A和B.我有Jenkins作業,它們分別構建項目。但我想製作一個發行鏈。例如:在項目A發佈後,更改項目C中的依賴項版本並將其提交到回購站,同樣也觸發項目C的新版本。 如果項目B被釋放比做同樣的。更新項目C,提交和發佈。 你知道Jenkins的插件,它使這個更新依賴版本和承諾git?在Jenkins發佈鏈接
謝謝!
4年前或5年前,我有同樣的約束。通常我有大約10個項目要發佈。我沒有相同的存儲庫約束,但是我沒有爲這些項目使用多模塊。
我最終在Java中構建了「發佈管道或協調器」。
在配置文件中,我爲每個項目指定了預期發行版本號和下一個版本號。 這個想法是,如果Nexus中不存在項目版本,我將發佈項目並更新依賴項版本號(使用屬性)。
該項目還打包了一個zip文件,然後將一些東西交付給QA團隊(使用匯編maven插件)。
在我的下一份工作任務中,我沒有同樣的需求。 如果現在有一個插件正在做這項工作,我會很高興聽到它。
我認爲Build Flow Plugin正是你所期待的。它提供了一種新的作業類型和一個DSL,您可以在其中配置何時/如何觸發其他作業。
我確實建議使用多個插件。每個人都有自己的優勢:
Read this post的具體表現如何強大工作DSL插件確實是。它啓發了我! :)
由於@Jcs建議,你也可以使用Build FlowDSL Plugin但不是很穩定,一些核心功能僅適用於CloudBees的Entrerprise用戶。