2013-12-10 4 views
0

У меня есть фаза multijob с двумя заданиями. Я добавил условие «Отметить фазу как успешную», когда «Успешно», Но когда одно задание терпит неудачу, оно не останавливает другую работу. Просто выходите и выполняйте действия после сборки.

Как я могу полностью прекратить выполнение оставшихся заданий, когда одна работа завершилась неудачно на той же фазе?

Есть ли способ остановить работу после действий после сборки?jenkins останавливает subjob полностью, когда фаза multijob не работает

Пример:
MultiJob
      - Фаза 1
            - Job1
            - Job2
      - Фаза 2
            - Job3
            - Job4

Если 'Job1' провален в PHASE1, это не будет продолжаться дальше, и делает построить не удалось. Но я хочу остановить «Job2», если «Job1» терпит неудачу.

+0

Просто интересно, что вы имеете в виду с multijob фазы. Пожалуйста, объясните свою установку более подробно. –

ответ

0

У меня есть решение для этого, у нас есть плагин PostBuildScript в jenkins. С помощью этого мы можем добавить действие post post и выбрать любой скрипт для выполнения.

Я выбрал отличный шрифт, чтобы сделать это. Следующий скрипт остановит задания, оставшиеся от 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"

Смежные вопросы