我有许多不同的项目,为每个项目配置Jenkins CI作业以运行测试。当我创建一个新版本时,我有第二个工作,它在许多不同的工作之间进行协调,这些工作遍历项目中的每个模块,并更新pom.xml中的版本和依赖项。我想使“更新”作业以所有CI作业的状态为条件 - 这意味着如果其中一个CI作业不是绿色,则更新作业将根本不运行。
我查看了Run Condition Plugin以及Conditional BuildStep Plugin,但似乎不能将它们配置为依赖于另一个Jenkins作业的状态。
答案 0 :(得分:0)
您可以通过[JOB_URL]/lastCompletedBuild/api/json
处的API点击其他工作,并验证每个result
。
搞砸了这个:
curl `[JOB_URL]/lastCompletedBuild/api/json` | jq '.result'
您可能希望result
说SUCCESS
。
这不是幻想,但你不想在CI中表现出色;你想要在升级jenkins时不太可能破坏的东西。 :)
答案 1 :(得分:0)
拥有[https://wiki.jenkins.io/display/JENKINS/Multijob+Plugin] [" Multijob插件"],
在您的情况下,您可以在第一步中添加作业并在该步骤中配置,在第一步的结果条件下,您要运行第二步。 同样,在第二步中,您可以配置一个/多个作业,还可以配置是否要并行运行它们。