11

MultiJob插件很棒,我想在我的构建过程中使用它,但是我之前必须解决一个问题:有三个作业 A、B 和 C。SVN 触发作业 A 和 B(并行执行)和作业 C当 A 和 B 完成时开始。作业 C 需要作业 A 和 B 的工件作为输入。

          -> Job A (with A.zip) 
Trigger                          -> Job C (use artifacts A.zip and B.zip)
          -> Job B (with B.zip)

使用MultiJob 插件设计工作流程很容易,但我不知道如何从作业 C 中的作业 A 和 B 获取相应的工件。我可以将内部版本号传递给作业 C (buildNr(A) != buildNr(B ))?或者有没有更聪明的方法来解决这个问题?

4

2 回答 2

10

multijob 插件为每个作业(代码)设置以下环境变量:

  • <JOBNAME>_BUILD_NUMBER
  • <JOBNAME>_BUILD_RESULT

whereJOBNAME由作业名称创建,所有非字符和数字替换为_. 因此,您可以将内部版本号作为参数传递给 Job C:

使用 Jenkins MultiJob 插件配置作业 C

于 2015-01-09T13:05:37.960 回答
1

有一种使用 EnvInject 和 groovy 脚本的解决方法: https ://issues.jenkins-ci.org/browse/JENKINS-20241

于 2013-11-05T11:32:31.847 回答