Как я могу запустить другое задание из конвейера jenkins (jenkinsfile)с помощью плагина GitHub Org?



как я могу вызвать сборку другого задания изнутри Jenkinsfile?



Я предполагаю, что это задание является еще одним репозиторием под тем же организация github, тот, который уже имеет свой собственный файл Дженкинса.



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



обновление:



stage 'test-downstream'
node {
def job = build job: 'some-downtream-job-name'
}


тем не менее, при выполнении я получаю ошибку




не найдено параметризованного задания с именем some-downtream-job-name




Я уверен, что эта работа существует в Jenkins и находится в той же папке, организации текущего. Это еще одна работа, которая имеет свою Jenkinsfile.



обратите внимание, что этот вопрос специфичен для Плагин Организации GitHub который автоматически создает и поддерживает задания для каждого репозитория и филиала из вашей организации GitHub.

890   3  

3 ответов:

прежде всего, это пустая трата слота исполнителя, чтобы обернуть build шаг node. Ваш вышестоящий исполнитель будет просто сидеть без дела без причины.

во-вторых, из многоотраслевого проекта можно использовать переменную окружения BRANCH_NAME чтобы сделать логику условной для текущей ветви.

в-третьих,

в дополнение к вышеупомянутым ответам: я хотел начать работу с простым параметром, переданным во второй конвейер, и нашел ответ на https://dzone.com/refcardz/continuous-delivery-with-jenkins-workflow.

Так что я использовал:

stage ('Starting ART job') {
    build job: 'RunArtInTest', parameters: [[$class: 'StringParameterValue', name: 'systemname', value: systemname]]
}

команда build в конвейере есть, чтобы вызвать другие задания в Дженкинсе.

пример на github

задание должно существовать в Jenkins и может быть параметризована. Что касается ветки, я думаю, вы можете прочитайте его из git

Comments

    Ничего не найдено.