2013-12-10 80 views
0

我有一个多任务阶段与两个工作。当“成功”时,我添加了“马克阶段成功”的条件,但是当一项工作失败时,它不会停止另一项工作。简单地出来并执行构建后的操作。

当一个工作在同一阶段失败时,我该如何完全停止剩余工作?

有没有什么办法可以阻止构建后行动的工作?jenkins在多任务阶段失败时完全停止subjob

实施例:
多椎
      - 阶段1
            - 作业1
            - 作业2
      - 第2阶段
            - 作业3
            - JOB4

如果 '作业1' 失败在阶段1,它不会继续下一个,使建设为失败。但是如果'Job1'失败,我想停止'Job2'。

+0

只是想知道你的意思多椎阶段什么。请更详细地解释您的设置。 –

回答

0

我得到了解决方案,我们在詹金斯有“PostBuildScript”插件。有了这个,我们可以添加一个后期构建操作并选择要执行的任何脚本。

我选择了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

相关问题