代码之家  ›  专栏  ›  技术社区  ›  sbi

如何将上游生成的二进制文件传递给远程下游生成从属文件

  •  4
  • sbi  · 技术社区  · 14 年前

    我们正在Windows上使用Hudson构建.NET解决方案并运行单元测试(Nunit)。因此,Hudson用于启动执行实际工作的批处理文件。

    我现在正在尝试建立一个新的测试,它将在一个构建奴隶上运行,并且运行很长时间。测试应该使用上游构建生成的二进制文件。

    我已经搜索了哈德逊文档,但是我找不到如何将上游构建工件传递给下游奴隶。我该怎么做?

    3 回复  |  直到 14 年前
        1
  •  7
  •   sbi    14 年前

    使用 Copy Artifact plugin 在你的下游建筑。

    只需指定上游作业的名称和复制到下游工作区的路径。

        2
  •  1
  •   Rob Goodwin    14 年前

    根据您使用的源代码管理,您可以欺骗并使用它。我不喜欢签入二进制文件,尤其是如果二进制文件很大的话。但在过去,我采用了通过CI构建生成的二进制文件或安装程序,将它们自动签入到单独的SVN存储库中,并让从机在主服务器指令时从该repo中拉出,并执行需要执行的任何测试。

        3
  •  0
  •   Peter Schuetze    14 年前

    如果您只依赖于二进制文件,那么对您来说可能有点过分了。但也有 Clone Workspace SCM Plugin 它将您的整个工作区归档,您可以在下一个作业中查看它,就好像它来自一个SCM。这是相当新的。

    我们目前使用不同的设置。我们有一个工件存储库,在那里我们推送二进制文件。第二个作业从存储库中提取二进制文件。实际上,它只是一个标准的Windows共享,我们在其中创建一个子文件夹,其中包含thw job build编号。如果您还使用[参数化触发器插件][2],您可以将内部版本号从作业1传递到作业2,并在正确的二进制文件上运行测试。副作用是,您可以稍后重用二进制文件,而不必在Hudson中保留很长的历史记录。

    〔2〕: http://Parameterized 触发器插件