根据另一个工作的状态运行Jenkins工作

时间:2017-06-25 18:43:08

标签: maven jenkins jenkins-plugins

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

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

2 个答案:

答案 0 :(得分:0)

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

搞砸了这个:

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

您可能希望resultSUCCESS

这不是幻想,但你不想在CI中表现出色;你想要在升级jenkins时不太可能破坏的东西。 :)

答案 1 :(得分:0)

拥有[https://wiki.jenkins.io/display/JENKINS/Multijob+Plugin] [" Multijob插件"],

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