6

我的 Hudson 配置中有两个工作。我们称它们为 A 和 B。

作业 A 是专门为生成文件夹application_home而创建的。此文件夹是一个随时可用的安装应用程序主文件夹。

作业 B 是“打包所有安装作业”。它需要复制作业A生成的application_home来生成安装程序。我的问题是,经过一番调查,我无法以简单的方式做到这一点。

我可以使用 shell 脚本,但是我需要知道作业 A 路径以及它的工作区在哪里获取应用程序_文件夹。

有没有更简单的方法来做到这一点?

编辑

我知道Copy Artifact Plugin。问题是它只复制工件。我需要按原样复制文件夹application_home 因为它已经在安装程序中使用的结构中如果有办法使用这个插件只复制文件夹,我还没有找到。

编辑 2. 答案:

好的,您可以使用Copy Artifact Plugin来完成。你需要

  • 将其配置设置为“从最新完成的构建的 WORKSPACE 复制”
  • Artifacts 设置为复制选项文件夹,如下所示:target/application_home/**
  • 目标目录设置为您想要的位置,例如:installation_bundle_folder/application_home。

它完成了:)

4

1 回答 1

4

你可以试试Copy Artifact Plugin

然后,您可以向“pack-all-together-for-installation-job”添加一个构建步骤,该步骤将复制application_home到打包目录中。可以选择仅包含 Project A 的最新稳定版本。


另一种选择是为成功的项目 A构建一个构建后步骤,该步骤将脚本复制application_home项目 B将使用它的位置。您可以使用WORKSPACE环境变量来获取绝对位置。(有关环境变量的列表,请参见此处)。

于 2013-01-30T13:23:05.563 回答