詹金斯:触发其他工作触发

时间:2016-03-01 11:54:50

标签: jenkins

作业A如何触发作业B,以便作业B将轮询其SCM,然后决定是否开始实际构建?

这是我的“真实世界”设置:我有一个名为GIT_PULL的作业,它使用Jenkins DSL创建子作业,具体取决于存储库内容中的子文件夹。这些子作业轮询SCM本身,但选项“轮询忽略某些路径中的提交”以确保它们的子路径发生变化时才会被触发。

当前状态是所有子作业每隔H / 5分钟轮询SCM并独立于其父作业GIT_PULL运行。但是我需要在GIT_PULL中知道,如果SCM更改后所有子作业都运行正常。但是,当我关闭子作业中的轮询并在GIT_PULL中触发所有子作业时,无论它们的存储库子路径是否已更改,它们都将运行。

那么如何在GIT_PULL中触发所有子作业,等待结果,以及子作业在实际运行之前检查SCM更改?

1 个答案:

答案 0 :(得分:1)

Yess - Multijob Plugin可以解决问题。

在MultiJob中,您可以定义要启动的下游作业,但只有在下游项目中发生SCM更改(即确切的选项名称)时构建。