【问题标题】:How to pass a build number within the MultiJob plugin?如何在 MultiJob 插件中传递内部版本号?
【发布时间】:2013-04-10 07:08:06
【问题描述】:

MultiJob plugin 很棒,我想在我的构建过程中使用它,但是我之前必须解决一个问题:有三个作业 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 plugin 设计工作流程很容易,但我不知道如何从作业 C 中的作业 A 和 B 获取相应的工件。我可以将内部版本号传递给作业 C (buildNr(A) ! = buildNr(B))?还是有更聪明的方法来解决这个问题?

【问题讨论】:

    标签: build jenkins continuous-integration hudson jenkins-plugins


    【解决方案1】:

    多作业插件为每个作业设置以下环境变量 (code):

    • <JOBNAME>_BUILD_NUMBER
    • <JOBNAME>_BUILD_RESULT

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 很高兴看到解决此问题的方法不止一种!我改用了 copyartifacts 插件的修改版本(见我的回答)。
      猜你喜欢
      • 2011-10-20
      • 1970-01-01
      • 1970-01-01
      • 2011-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-16
      • 1970-01-01
      相关资源
      最近更新 更多