我有一个有两个工作的多工作阶段。当“成功”时,我添加条件“标记阶段成功”,但是当一个工作失败时,它不会停止另一个工作。简单地出来并执行构建后的操作。
当一个工作在同一阶段失败时,如何完全停止剩余的工作?
有没有什么方法可以阻止作业后期制作?
例:
多椎
- 第1阶段
- Job1
- Job2
- 第2阶段
- Job3
- Job4
如果第1阶段的'Job1'失败,则不会继续下一步并使构建失败。但是如果'Job1'失败,我想停止'Job2'。
答案 0 :(得分:0)
我得到了解决方案,我们在jenkins中有“PostBuildScript”插件。有了这个,我们可以添加一个post build动作并选择要执行的任何脚本。
我选择了groovy脚本来做到这一点。以下脚本将停止MultiJob留下的作业。
import hudson.model.*
import jenkins.model.Jenkins
for(c in Jenkins.instance.computers) {
println("computer: "+c.name)
for(e in c.executors) {
println("name: "+e.name)
if (e.name =~ /JOBNAME/){
println("JOB : "+e.name)
e.interrupt();
}
}
}
看看这个“https://wiki.jenkins-ci.org/display/JENKINS/PostBuildScript+Plugin”