从 Child 引用 Jenkins Parent 工作区
Refer To A Jenkins Parent Workspace From Child
我在 Jenkins 中有一个 child 配置,可以从 3 个单独的 parent 配置中触发。
这样做的目的是 运行 Sonar 在我的代码上。我可以为每个 parent 添加一个 post 构建步骤,但如果有任何更改,我必须在 3 个地方进行更改,并且可能会遗漏某些内容。
因此,我可以看到几个选项:
- child 必须 运行 与 parent 在同一个从站上,并且需要通过变量访问 parent 工作区。
- svnurl转入child并签出代码
- parent 工作区被压缩并转移到 child(从属独立)
第一个选项似乎对网络影响最小(尤其是工作空间非常大)。
在 Jenkins 中哪些是可能的,我该怎么做?
我在我的 Jenkins 环境中使用了 Shared workspace plugin。
我的 Linux master 构建了一个 Maven 项目,我需要与 Windows slave 共享工作区(带有编译源)以构建 MSI 包。
您只需在父作业上添加一个 post 构建操作来压缩工作空间(工作空间大小:大约 1GB)。
虚拟机在同一个物理网络中,压缩工作空间不到 2 分钟:
01:33:28 Archiving workspace
01:35:15 Deleting old workspace snapshot from #160
接下来,子作业可以使用父工作区作为 SCM 源:
有帮助吗?
我在 Jenkins 中有一个 child 配置,可以从 3 个单独的 parent 配置中触发。
这样做的目的是 运行 Sonar 在我的代码上。我可以为每个 parent 添加一个 post 构建步骤,但如果有任何更改,我必须在 3 个地方进行更改,并且可能会遗漏某些内容。
因此,我可以看到几个选项:
- child 必须 运行 与 parent 在同一个从站上,并且需要通过变量访问 parent 工作区。
- svnurl转入child并签出代码
- parent 工作区被压缩并转移到 child(从属独立)
第一个选项似乎对网络影响最小(尤其是工作空间非常大)。
在 Jenkins 中哪些是可能的,我该怎么做?
我在我的 Jenkins 环境中使用了 Shared workspace plugin。
我的 Linux master 构建了一个 Maven 项目,我需要与 Windows slave 共享工作区(带有编译源)以构建 MSI 包。
您只需在父作业上添加一个 post 构建操作来压缩工作空间(工作空间大小:大约 1GB)。
虚拟机在同一个物理网络中,压缩工作空间不到 2 分钟:
01:33:28 Archiving workspace
01:35:15 Deleting old workspace snapshot from #160
接下来,子作业可以使用父工作区作为 SCM 源:
有帮助吗?