我想从另一个版本的go cd下载文件(让我们称之为BUILD_A)并在我的Master版本(BUILD_B)上使用它。为此,我使用curl从Go cd Artifactory中获取文件。
curl -u${user_name} -O "path/to/artifactory/xxx/builds/BUILD_A/${GO_PIPELINE_LABEL}/filename.xxx"
现在问题在于BUILD_B将$ {GO_PIPELINE_LABEL}解释为自己的构建而不是BUILD_A中的构建号。因此,如果BUILD_A为65且BUILD_B为1001,则它将采用BUILD_B,最终它将如下所示。
curl -u${user_name} -O "path/to/artifactory/xxx/builds/BUILD_A/1001/filename.xxx"
BUILD_A在curlpath中是硬编码的。
所以我的问题是,是否有可能从Artifactory中的另一个版本和最新的build_number获取文件?
答案 0 :(得分:0)
有一些插件可以轮询诸如Artifactory之类的存储库,以获取GoCD的更新工件,例如:
https://github.com/1and1/go-maven-poller
go-maven-poller插件提供了一个环境变量,其中包含用于CURL的工件的URL。
(免责声明:我是该插件的维护者)
如果不需要Artifactory作为源,则应留在GoCD内,并从BUILD_B中的BUILD_A获取管道构建结果。原因是轮询将使您浪费时间。
使用另一个管道作为材料包括:
有关更多信息,请参见here。