Конвейер Jenkins: получите URL-адрес сборки и номер сборки и распечатайте его в методе post action - PullRequest
0 голосов
/ 13 февраля 2020

У меня есть одно конвейерное задание, где оно выполняет несколько заданий, например, job1 и job2. Когда выполнение будет завершено, мне нужно получить URL сборки job2 и его номер сборки и поместить его в раздел post успеха.

Как этого добиться? Просьба поделиться своими входами.

Stages
{
    Stage A
    {
       build 'job1'
    }

    stage B
    {
       build 'job2'
     }
}

post 
{
    success 
    {
      mail to: "${EMAIL_LIST}",
      subject: 'Test Pipeline - SUCCESS',
      body: " Get job-2's build_url and build_number"     
    }
}

1 Ответ

0 голосов
/ 13 февраля 2020

Вы можете попробовать что-то вроде этого, если вы запустите downstream заданий и дождитесь их результатов:

def job1 = build job: 'myJob', wait: true
def job1Result = "${job1.getId()}"
def job1Url = "${job1.getAbsoluteUrl()}"

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

Ps. Я вижу, что не рекомендуется использовать getAbsoluteUrl, но вы можете прочитать документацию по ссылке ниже. См. Все варианты Выполнить .

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