簡體   English   中英

使用 Jenkins、Artifactory、Maven 自定義構建標記

[英]Custom build tagging with Jenkins, Artifactory, Maven

我正在制定一種策略來標記我的持續集成和交付管道中的構建。 生成新版本后,它會經歷多個測試階段; 在每個階段之后,我想標記構建。 我的想法是擴展標准的 Maven 系統,所以一個例子是:

my-artifact-1.0-SNAPSHOT.jar
my-artifact-1.0-PASSED_TESTS_1.jar
my-artifact-1.0-PASSED_TESTS_2.jar
...
my-artifact-1.0-RELEASE.jar

當構建通過每個階段時,其標記(其名稱/版本的一部分)會更新。 最終,在所有測試階段之后,構建被標記為可發布與 RELEASE。

我正在使用 Jenkins 服務器並將工件存儲在 Maven 存儲庫中的 Artifactory(非 Pro)上。 我的計划是為上面的每種標記類型使用單獨的 Maven 存儲庫,並在更新標記時將工件從一個移動到另一個。

我的促銷偽代碼如下所示:

(1) Download artifacts that passed in Jenkins 
(2) Text-replace the tag (maybe pom.xml as well?)
(3) Upload to new repository
(4) Update the associated Git commit with tag also

我不確定如何真正干凈地實現這一點 - 這是一種常見的做事方式嗎? 我錯過了什么重要的東西嗎? Jenkins + Artifactory(非專業版)+ Maven(僅存儲庫,用於構建的 Gradle)系統可以完成此任務嗎?

謝謝!

我可以看到向文件名添加更多元數據的想法來自哪里。 通常,除了名稱之外,我們沒有任何其他地方可以添加此類信息。 但是有了合適的工件存儲庫管理器(作為 Artifactory),您就不再需要它了。 您可以將任何元數據附加到存儲庫管理器中的工件,然后根據這些屬性操作(例如提升)工件。

這是一個截屏視頻,顯示了將這種元數據添加到工件中需要什么,以及如何基於它提升工件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM