使用环境变量更改 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 作业,则可以通过构建参数传入工作区路径。
例如:
- 在 build_x 和 build_y 中创建一个名为 "FolderPathFromParent" 的字符串参数。
- 调用子 build_x 或 build_y 作业作为下游作业时,传入字符串 "ParentA" 或 "ParentB"(取决于父级)。
- 将build_x和build_y中的自定义工作区设置为C:\${FolderPathFromParent}。
启动父级时,它应该在 C 盘下创建一个名为 ParentA 或 ParentB 的工作区。
我正在使用 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 作业,则可以通过构建参数传入工作区路径。
例如:
- 在 build_x 和 build_y 中创建一个名为 "FolderPathFromParent" 的字符串参数。
- 调用子 build_x 或 build_y 作业作为下游作业时,传入字符串 "ParentA" 或 "ParentB"(取决于父级)。
- 将build_x和build_y中的自定义工作区设置为C:\${FolderPathFromParent}。
启动父级时,它应该在 C 盘下创建一个名为 ParentA 或 ParentB 的工作区。