2

只有当其他几个工作中的一个是由 SCM 触发器构建时,是否有可能触发某些工作?

例如: 1. 项目 A、B、C 由 SCM 触发器构建。2. 只有在构建了 A 或 B 或 C 时,才会构建项目 D。即使所有上游项目都已构建(A、B 和 C),它也应该只构建一次。

4

1 回答 1

0

对于工作“D”,在高级项目选项下,添加静默期(多长时间,试验什么效果好)。还要使构建参数化,并为 SCM 版本添加参数。当从其他构建触发构建时,使用参数化触发器插件并将 SCM 版本作为参数。

这里的想法是,当队列中有两个相同的构建时,Jenkins 会将它们组合起来,并且只构建一次 D。

这假设 Jenkins 的版本控制支持实际上设置了指示版本的环境变量(在 A、B 和 C 作业中),我对此不是 100% 确定的。

如果你让它以其他方式工作,但你得到了多个构建,请在构建 D 中尝试“允许并发构建”复选框,我认为它对此有一些影响,无论是哪种方式。

于 2012-10-24T12:59:33.017 回答