Jenkins构建可以自己访问存档的工件吗?

Don*_*ker 5 jenkins

我正在使用Jenkins,并在构建结束时使用"归档工件"步骤将它们存档为zip文件.

我想使用脚本在构建结束时将工件推送到远程服务器,而不是使用此步骤.我要推送的服务器在脚本中使用REST API/HTTP PUT请求来上传文件.

请注意,我正在寻找访问在同一版本中创建的工件.所以,如果我在构建#5,我想要构建#5的工件,而不是构建#4.

有没有办法使用脚本访问此zip文件,在与其创建的相同的构建中?

我需要远程上传此zip,并且不想创建另一个作业.

Chr*_*Orr 5

您可以安装其中一个" Publish Over ... "插件,以便在构建结束时上传您的工件.

Publish Over插件的目标是在发送构建工件时提供一组一致的功能和行为......某处.

另请参阅其他发布工件方法的"上传"插件完整列表.


Sag*_*gar 5

就像 @Christopher 所说,您可以使用 Jenkins 插件页面上的任何Publish Over插件将工件上传到任何

如果您想从构建本身访问存档的 zip 文件,可以使用以下链接来访问它:

http://<server>/job/${JOB_NAME}/lastSuccessfulBuild/artifact/<artifact name w/folder>

例如:

  • 服务器=myserver.com
  • 职位名称 =myproject
  • 神器=del/project.zip

您的网址将是:

http://myserver.com/job/myproject/lastSuccessfulBuild/artifact/del/project.zip

编辑:问题已更改。无论如何,这都可以用于访问当前构建中的上一个构建的工件。


Don*_*ker 1

我发现无法访问生成它的构建的“Archive the Artifacts”包。此步骤始终在构建中最后发生。在构建结束之前(例如在通过脚本构建期间)访问 URL 会产生空白 zip 文件。为了解决这个限制,我正在制作第二个链接构建作业来获取 zip 并运行我的脚本来部署它。