【问题标题】:How to block parent job until both the downstream jobs are completed如何阻止父作业,直到两个下游作业都完成
【发布时间】:2019-08-06 14:44:07
【问题描述】:

enter image description here我有 4 个工作(工作 A、B、C 和 D),其中工作 A 触发 B、C 和 D 作为下游项目。 B 和 C 应该并行运行,A 必须等到两个作业都完成。 根据作业 C 的结果(失败/不​​稳定),需要触发作业 D(无论作业 B 的状态)。 请建议如何创建此类工作。

我已经为作业 B 和 C 尝试了两次“在其他项目上触发/调用构建”,并且我为一项作业(例如 C)选择了“阻止直到触发的项目完成构建”。 在这种情况下,作业 A 会在作业 C 完成后立即完成,尽管作业 B 仍在进行中。 我为 B 和 C 尝试了“阻止直到触发的项目完成构建”,在这种情况下,B 和 C 都没有并行启动,作业 C 一直等到作业 B 完成。我需要同时触发 B 和 C,作业 A 应该等到 B、C、D(如果 C 失败)完成。

不适用

【问题讨论】:

  • 提供一些您尝试过的解决方案的代码示例会很有帮助 - 这样可以更轻松地提供解决方案。
  • 请查看附件截图。
  • 因此,如果我尝试像所附图像一样,即使作业 B 正在进行中,一旦作业 C 完成,作业 A 也会完成。我想阻止作业 A 直到作业 B 完成。如果我阻止作业 B,那么作业 C 将在作业 B 完成之前不会启动。我希望 B 和 C 并行执行。

标签: jenkins


【解决方案1】:

我通过在“构建触发器”下的同一“要构建的项目”部分中定义作业 B 和 C 来实现这一点,用逗号分隔并“在触发的项目完成构建之前被阻止”。

【讨论】:

    猜你喜欢
    • 2010-09-20
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-17
    • 1970-01-01
    相关资源
    最近更新 更多