【问题标题】:Jenkins - trigger job if one of other projects was pulled by SCM詹金斯 - 如果其他项目之一被 SCM 拉动,则触发工作
【发布时间】:2012-10-01 20:10:04
【问题描述】:

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

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

【问题讨论】:

  • 假设 'Job D' 已经构建过一次(由其他 Jobs 之一触发),您如何知道何时再次构建 'Job D'?

标签: build jenkins jobs


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    相关资源
    最近更新 更多