将并行构建中的s3工件传递到Jenkins Workflow中的单个构建

时间:2015-08-09 06:25:48

标签: jenkins amazon-s3 jenkins-workflow jenkins-pipeline

我正在尝试通过Jenkins构建Windows安装程序。

我有许多jenkins项目,它们构建单独的模块,然后通过s3工件插件在s3中保存这些工件。

我想并行运行它们并将工件复制到最终的“构建安装程序”作业,该作业将获取所有这些并构建安装程序映像。我想出了如何与jenkins工作流并行运行作业,但我不知道在哪里查找如何提取作业结果详细信息,确保它们都是相同的变更集并将其传递给'build-installer'作业

到目前为止,我有这样的工作流脚本:

def packageBuilds = [:]
// these save artifacts to s3:
packageBuilds['moduleA'] = { a_job = build 'a_job' }
packageBuilds['moduleB'] = { b_job = build 'b_job' }
parallel packageBuilds

// pass artifacts from another jobs to below??
build job:'build-installer', parameters:????

这是正确的方法吗?或者我应该只有一个大型构建作业,在一个作业中构建模块和安装程序?

1 个答案:

答案 0 :(得分:1)

执行所有步骤的单个作业将更容易管理。

我知道文件参数不支持将文件发送到工作流程作业:JENKINS-27413。我没有尝试使用文件参数从工作流作业发送文件。没有一些特别的支持,可能无法工作。 (不确定你是否甚至可以在自由式构建之间发送文件参数。)