我有一个通用资源库,用于存储各种构建的工件。 我们的版本有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”有助于我,但是我再次获得最新版本,无论其状态如何。
编辑:我没有自定义布局设置,但我做了一个针对这种情况,以测试它。没有帮助。