2015-08-24 62 views
3

Jenkins監視提交的Git存儲庫中有一個Gradle項目。當一個新的提交進來時,它將啓動構建管道。在管道的最後,它將jar文件發佈到Artifactory。當在Jenkins中發佈到Artifactory時,將Git SHA提交ID用作工件版本號

我想Jenkins使用Git SHA提交ID具有已發佈jar的工件版本號。我看到Jenkins Git插件將提交ID保存在名爲GIT_COMMIT的環境變量中。但是我怎麼告訴Jenkins Artifactory插件使用這個值作爲版本號?

回答

2

因爲Artifactory知道如何存儲文件的元數據,所以您不必使用額外的元數據來濫用文件名。

更何況,詹金斯與詹金斯Artifactory插件或Gradle與Gradle Artifactory插件構建的所有文件已經具有此信息。

下面是Jenkins傳給Arifactory的屬性示例。正如你所看到的,vcs.revision包括你需要的信息: enter image description here

+0

但我不想維護一個不同的版本號(在你的例子中是3.5),我希望每個構建工件被保存和訪問。我不想用新的神器代替現有的神器,我希望新的神器是它自己的神器。 – Takehiko

+3

爲此Artifactory支持獨特的快照。只需部署工件,讓我們說'1.0-SNAPSHOT',它會自動爲每個已部署的工件生成獨特的版本。然後,您可以使用'-SNAPSHOT'或按屬性('vcs.revision')進行搜索以檢索最新的特徵。 – JBaruch

相關問題