Как вызвать нижестоящее задание jenkins только успешно выполненные оба задания вверх по течению

Я создал задание A, которое ищет успешные исходные задания (задание B и задание C) и запускает сценарий оболочки для проверки условия.

После успешного выполнения задания B и задания C задание A выполняет последующие задания (задание D и задание E).

я использовал reverse (для настройки заданий восходящего направления) и downstream-ext (для настройки последующих заданий) плагины в задании A с использованием JJB.

Проблема, с которой я сталкиваюсь, заключается в следующем: после успешного выполнения задания B без ожидания результата задания C. Задание A должно дождаться как задания B, так и задания C, а затем выполнить на основе результата.

Не могли бы вы помочь мне, как настроить этот сценарий.

2 ответа

Вы можете попробовать использовать подключаемый модуль, вот документация:
https://wiki.jenkins-ci.org/display/JENKINS/Join+Plugin

Это будет проще, если вы преобразуете свою работу A в поток сборки https://wiki.jenkins.io/display/JENKINS/Build+Flow+Plugin?focusedCommentId=60917290 или, что еще лучше, преемник Pipeline 2.0 https: // jenkins.io / документ / книга / трубопровод /

(Groovy) Код в A будет выглядеть примерно так:

if (build('scenario-B-Job') && build('scenario-C-Job')) {
    build('scenario-E-Job')
    build('scenario-D-Job')

} Вы также можете распараллелить (B,C, а затем D,E), чтобы сократить общее время выполнения, если у вас достаточно подчиненных.

Другие вопросы по тегам