詹金斯:如何阻止一项工作使其不可挽回

时间:2015-01-30 08:24:15

标签: jenkins jenkins-plugins

这不仅仅是关于Jenkins中并发作业执行的另一个问题。我遇到的问题是,有几个工作彼此独立运行。完成后,应该可以运行手动作业。但条件是所有这些自动化工作都应处于成功状态。否则,不应该运行此手动作业。如果其他作业正在运行,也应该无法运行甚至计划运行此手动作业。

我到处搜索答案并检查每个可能的同步插件。但我没弄清楚如何解决上述问题。

3 个答案:

答案 0 :(得分:1)

恕我直言,传送管道插件(请参阅https://wiki.jenkins-ci.org/display/JENKINS/Delivery+Pipeline+Plugin进行下载,http://www.infoq.com/articles/orch-pipelines-jenkins进行详细说明)可以做到你想要的。

您可以运行大量工作(并行与否),以及何时(并且仅在何时)成功完成另一项工作(或更多)。您甚至可以添加手动步骤(当您的管道可能继续时需要单击按钮)。 一切都是可配置的 - 此时此刻相当稳定。

没有人应该能够手动(或以其他方式)开始处于"等待状态的工作"其他工作完成。

答案 1 :(得分:0)

关于这个问题: 否则无法运行此手动作业。如果其他作业正在运行,也应该无法运行甚至计划运行此手动作业。

您可以使用the Throttle Concurrent Builds Plugin并创建一个类别,其中包括您的自动作业和手动作业。

如果一个自动作业正在运行,则无法启动手动作业。

关于您的第一个问题,您是否看过Join plugin

干杯

答案 2 :(得分:0)

https://wiki.jenkins-ci.org/display/JENKINS/Promoted+Builds+Plugin也可以是选项。以这种方式设置促销需要手动批准,并且只有在完成自动化作业时,构建才会失败。