【问题标题】:Run Jenkins Job Based on Another Job's Status根据另一个作业的状态运行 Jenkins 作业
【发布时间】:2017-06-25 18:43:07
【问题描述】:

我有许多不同的项目,为每个项目配置了 Jenkins CI 作业以运行测试。当我创建一个新版本时,我有第二个工作在多个不同工作之间进行协调,这些工作遍历项目中的每个模块并更新 pom.xml 中的版本和依赖项。我想让“更新”作业以所有 CI 作业的状态为条件 - 这意味着如果其中一个 CI 作业不是绿色的,那么更新作业将根本不会运行。

我查看了Run Condition PluginConditional BuildStep Plugin,但似乎不可能将它们配置为依赖于另一个 Jenkins 作业的状态。

【问题讨论】:

    标签: maven jenkins jenkins-plugins


    【解决方案1】:

    您可以通过[JOB_URL]/lastCompletedBuild/api/json 的API 找到其他工作,并验证每个工作的result

    解决这个问题:

    curl `[JOB_URL]/lastCompletedBuild/api/json` | jq '.result'
    

    你可能想让resultSUCCESS

    这并不花哨,但你不想在 CI 中花哨;你想要升级詹金斯时不太可能破坏的东西。 :)

    【讨论】:

      【解决方案2】:

      有一个 [https://wiki.jenkins.io/display/JENKINS/Multijob+Plugin] ["Multijob Plugin"] ,

      在您的情况下,您可以在第一步中添加一个作业并在该步骤中配置,在第一步的结果条件下,您想要运行第二步。 同样,在第二步中,您可以配置一个/多个作业,也可以配置是否要并行运行它们。

      【讨论】:

        猜你喜欢
        • 2015-12-03
        • 1970-01-01
        • 2021-11-22
        • 1970-01-01
        • 2020-09-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多