【问题标题】:Mark Jenkins Job chain as failed if any downstream job fails如果任何下游作业失败,则将 Jenkins 作业链标记为失败
【发布时间】:2019-01-18 15:48:37
【问题描述】:

我有一组链式 freestyle jenkins 作业,我们将其用作多个项目的构建管道,我们最近将它与我们的源存储库管理(phabricator)集成,因此它将持续集成构建结果报告回合并请求(无论是如果失败或通过)。

由于 Phabricator 的一些限制,我们触发管道的方式是通过 AWS lambda 函数,该函数知道链的第一个作业是什么并启动它,因为它都链接在一起,触发第一个作业会执行整个管道.

问题是,从技术上讲,我们正在触发单个作业(这也会触发下游作业等等),因此,如果第一个作业通过,无论第二个作业是否失败,它都会将绿色构建返回给 Phabricator ,它不会等待任何下游项目完成,如果第一个通过,它会说它是绿色的。

在我看来,我想到了两个问题来解决这个问题:

1.- 如果下游项目失败,有没有办法将作业标记为失败? 2.-有没有办法触发链而不是单个工作?这样我认为它会返回链的结果而不是第一份工作。

欢迎任何想法和建议。

【问题讨论】:

    标签: jenkins continuous-integration phabricator


    【解决方案1】:

    您是否考虑过将您的 Jenkins 链重写为单个 pipeline job?我认为这会让你的生活更轻松。 否则,您需要通过链向下传递 Phabricator 构建 ID,并且只在最终作业中回发成功响应,任何失败的作业都会返回失败响应。

    【讨论】:

    • 是的,我们正在远离 Jenkinsfiles,我们使用基于 YAML 的合约来定义管道并直接在 Jenkins 上生成作业
    猜你喜欢
    • 2011-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    • 2020-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多