检索由远程触发器创建的工件

时间:2015-09-15 09:51:10

标签: jenkins

我们在构建过程中依赖的某些软件(Redgate SQL Packager)存在问题,特别是我们拥有在一台机器上运行它的许可证(我们的旧构建机器运行FinalBuilder)而且公司没有&#39 ;再卖掉它,让我们也可以在新的构建机器上运行它(运行Jenkins)。

为了解决这个问题,我们在旧机器上安装了第二台Jenkins服务器,它将在旧的构建机器上运行SQL Packager,并将输出(单个.exe)作为工件发布。目的是使用参数化远程触发器插件从主构建中触发此操作,然后将工件复制回主Jenkins服务器以进行发布。

但是,我遇到的问题是,检索这个工件比我预期的要困难得多。我原本希望使用Copy Artifact插件,但这似乎只是想使用本地构建项目。我也无法在插件列表中看到任何明显的内容。

  • 我是以错误的方式来做这件事的吗?有没有更简单的方法来解决这个问题(运行必须在特定机器上运行的单个构建步骤)
  • 我是否以正确的方式使用文物?
  • 我担心有竞争条件的可能性 - 我理想地想知道我的远程构建的构建参考,所以我可以确定我得到了正确的工件,但是该插件似乎限制了我最近的'这对于并发构建肯定是危险的吗?
  • 如果其他一切都很好 - 如何从远程构建机器中检索此文件?

1 个答案:

答案 0 :(得分:2)

不是使用单独的Jenkins服务器,而是从Jenkins主服务器连接到旧计算机作为构建从服务器,请参阅Distributed Builds了解各种连接选项。在Jenkins中定义SQL Packager构建,以便它绑定在旧机器上的构建从站上运行。一旦构建由单个主控制器控制,您就可以使用Copy Artifact plugin

关于“竞争条件”问题,Copy Artifact插件允许您从几个选项中进行选择,以选择从中复制工件的构建 - 您可以选择最新的成功构建,标记为“永远保留”的最后一个构建,特别构建,以及其他。有许多方法可以设置作业以便您选择已知的良好构建,您可能会发现Promoted Builds plugin很有用。