2

我正在使用 MultiJob 项目来实现每次推送到某个 Git 分支时运行的流程。

如何在 2 个不同的作业之间传递参数(每个作业位于单独的 MultiJob 阶段)

我试图做的是:

作业 A:(在 Master 上运行 - windows)

将 2 个参数回显到我放置在共享位置(而不是作业 A 的工作区)的新文件(称为 parameters.properties)中

所以这个文件的 contnet 看起来像:

currentBuild=2012-11-27_09-20-50 
currentBranch=master

作业 B:(在 Linux 从站上运行)

“此构建已参数化”选项已打开。

添加了“文件参数”和仅文件名,因为我还将自定义工作区设置为文件所在的共享位置。

我有一个尝试使用此参数的 shell 脚本,但它没有得到它。

请协助,

多伦

4

1 回答 1

4

解决方案:

  1. 在 MultiJob 主项目中:

    • 设置“此构建已参数化”

      添加 2 个文本参数(不同的名称,因为 Job Build 基于 Jenkins 变量 Build_Id 已更改,我想稍后将 currentBuild 设置为常量值而不是新值)

      • 工作构建

      • 工作分公司

  2. 在每个 MultiJob Phase 下的每个 Job 上:

    • 添加预定义参数:

      • currentBuild=${JobBuild}

      • currentBranch=${JobBranch}

    取消勾选“当前作业参数”

    取消勾选“暴露的 SCM”

于 2012-12-12T08:21:29.530 回答