Запуск задания многоотраслевого конвейера из другого многоотраслевого конвейера

У меня есть сценарий, где, но у меня есть 2 проекта (A и B), оба настроены в Jenkins с многоотраслевыми конвейерными заданиями, проблема в том, что проект B зависит от проекта A.

Поэтому я обнаружил, что иногда, когда я проверяю код в Project A, мне также нужно собрать Project B после сборки A. Теперь, прежде чем я начал исследовать конвейерные сборки, у меня было задание на ветку, а затем в Дженкинсе запускалось подходящее задание для Проекта B для соответствующей ветки.

То, что я хотел бы настроить в Jenkinsfile, чтобы при запуске ProjectA / development запускалось многоотраслевое конвейерное задание для Project B и той же ветви.

Я имею:

stage ('Trigger Tenant Builds') {
        build job: "ProjectB/${branch}", wait: false
    }

Но мой конвейер ProjectA не работает с:

ERROR: No parameterized job named ProjectB/develop found

Есть идеи?

1 ответ

Решение

Я решил это сейчас. То, что я делаю, это определение восходящего триггера в Jenkinsfile проекта B:

pipelineTriggers([ 
    upstream( 
       threshold: hudson.model.Result.SUCCESS, 
       upstreamProjects: "/ProjectA/" + env.BRANCH_NAME.replaceAll("/", "%2F") 
    )
])