Artifactory REST API具有build promotion的资源,该资源带有内部版本名称和内部版本号。我的项目之一是发布三个具有相同内部版本名称和内部版本号的内部版本。当查看回购中的项目时,它们足够鲜明:
Myproject
Myproject-foo
Myproject-no-bar
我希望仅宣传其中一种(Myproject-foo
)。我可以获取build runs作为构建名称,但是由于URI匹配,因此无法进一步检查不同的构建。我能做些什么来从这些内部版本号中自动进行特定项目的推广,或者是手动单击,检查每个项目并推广适当的图像的唯一方法?
答案 0 :(得分:1)
您不应发布具有相同build.name和build.number的三个版本。如果尝试这样做,Artifactory通常会抛出500错误。检查artifactory.log,以查看是否所有三个构建实际上都已将其构建到服务器中。
答案 1 :(得分:1)
尽管最终可能使用相同的内部版本名称和内部版本号,但您应避免这种情况,因为这样会更难区分UI和REST API中的运行。从这种情况下,我可以看到,促销REST API会促销最新的构建运行(并非全部)。
如果您仍然想这样做,可以签出此插件https://github.com/jfrog/artifactory-user-plugins/tree/master/build/promoteWithDeps
(范围更广,但可以接受其他参数buildStartTime
来区分构建运行)