使用环境变量更改 Jenkins 中的工作区位置

Changing workspace location in Jenkins using environment variable

我正在使用 Jenkins 'multi job plugin' 在 jenkins 中运行构建

目前我有两个名为 'Build_1' 和 'Build_2' 的构建。 这两个作业组合在两个名为 'Parent1' 和 'Parent2'.

的多作业构建中

如下图

Parent1

  --- build_x

   ---build_y


Parent2

-- build_x

-- build_y

当我 运行 通过 'Parent1' 和 'parent2' 构建时,我想为 'build_x' 和 'build_y' 提供不同的工作区。

Jenkins 中提供的选项“使用自定义工作区”对于一个构建始终是固定的,但我需要根据来自 'parent1' 构建或 'parent2' 构建的触发器更改此位置。 有什么选项可以让我在触发 'parent1' 时为工作区位置设置环境变量,以便我可以提供不同的工作区。

如果您从父级触发 build_x 和 build_y 作业,则可以通过构建参数传入工作区路径。

例如:

  1. 在 build_x 和 build_y 中创建一个名为 "FolderPathFromParent" 的字符串参数。
  2. 调用子 build_x 或 build_y 作业作为下游作业时,传入字符串 "ParentA" 或 "ParentB"(取决于父级)。
  3. 将build_x和build_y中的自定义工作区设置为C:\${FolderPathFromParent}。

启动父级时,它应该在 C 盘下创建一个名为 ParentA 或 ParentB 的工作区。