предотвратить Дженкинс круговые вверх по течению триггеров - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть несколько заданий jenkins, которые запускаются восходящим триггером на build.result = SUCCESS или вручную.Работы имеют круговые зависимости.Например, возьмем такой сценарий:

JOB_1: have as upstream trigger JOB_2
JOB_2: have as upstream trigger JOB_1

Диаграмма:

   JOB_1
^         |
|         V
<- JOB_2 <-

Если я начну JOB_1, будет создан бесконечный цикл.Чтобы предотвратить это, я исследовал несколько методов.

  1. использует историю заданий, а когда задание попадает в список заданий, задайте для результата построения значение NOT_BUILT.Однако это не тот метод, который мне нужен, так как я не хочу запускать другую работу, если она была выполнена ранее.Я хотел бы сделать шаг перед сборкой, чтобы предотвратить повторное выполнение задания.

if (currentBuild.rawBuild.getCause (hudson.model.Cause $ UpstreamCause) .toString () .contains (env.JOB_NAME)) {currentBuild.result = 'NOT_BUILT' return}

Используйте плагин: Ограничить причины выполнения сборки. Это не сработает, если я наложу тестовое ограничение на имя задания, и в любом случае это не то, что мне нужно, потому что я хотел бы проверить условие, как описано в1.

Я нашел некоторые подробности о параметризации восходящих триггеров https://wiki.jenkins.io/display/JENKINS/Parameterized+Trigger+Plugin

Есть ли у вас какие-либо материалы по этой теме?Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...