我有一個通用資源庫,用於存儲各種構建的工件。 我們的版本有3種可能的狀態 - built, staged, release
。這些狀態通過REST API Build Promotion
調用進行分配。在Artifactory中獲取最新版本狀態
在build B中我需要最新的版本的工件 build A. 我該怎麼做?
的工件具有結構:
Generic:UNIX/somefolder/123/<artifacts-of-build-id-123>
Generic:UNIX/somefolder/123/<artifacts-of-build-id-124>
我曾嘗試:
一)構建是在TeamCity的運行,所以我嘗試使用TeamCity的插件。在那裏,我嘗試了這種依賴模式:Generic:UNIX/somefolder/**/*[email protected] :: BuildName :: Build#LAST_RELEASE => build-dir/
- 這不起作用。使用LATEST
而不是LAST_RELEASE
確實有效,但解決了最新版本,無論其狀態如何。
b)使用的REST API:我提出這個呼籲:
curl -v --fail --request POST --header 'Content-Type: application/json' \
--data '{"buildName": "UNIX :: BuildName :: Build", "buildNumber": "LATEST", "buildStatus": "release"}' \
https://artifactory.srv.int.domain.com/artifactory/api/search/buildArtifacts
但返回400 Bad Request
錯誤。從JSON中刪除「buildStatus」有助於我,但是我再次獲得最新版本,無論其狀態如何。
編輯:我沒有自定義佈局設置,但我做了一個針對這種情況,以測試它。沒有幫助。