При выполнении нескольких заданий в конвейере Jenkinsfile, как мне записывать логи для данной сборки - PullRequest
0 голосов
/ 26 июня 2019

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

pipeline {
    agent any
    stages {
        stage('Build First Repo') {
            steps {
                build job: 'jobOne', parameters: [string(name: 'branch', value: "${params.branch}")], quietPeriod: 1
            }
        }
        stage ('Build Second Repo') {
            steps {         
                build job: 'jobTwo', parameters: [string(name: 'branch', value: "${params.someOtherBranch}")], quietPeriod: 1
            }
        }
        stage ('Deploy') {
            steps {
                build job: 'jobThree', parameters: [string(name: 'buildEnvironment', value: "${params.environment}")], quietPeriod: 1
            }   
        }
        stage ('Remote Build') {
            steps {
                build job: 'jobFour', parameters: [string(name: 'Hosts', value: "${params.hosts}")], quietPeriod: 1
            }
        }
    }
    post {
        always {
            mail to:me@mydomain.com, subject: "${currentBuild.currentResult} - ${currentBuild.fullDisplayName}", body:"...${currentBuild.rawBuild.getLog(100)}"
        }
    }
}

В настоящее время я могу получить только pipe build build (который я отправляю по электронной почте в разделе post / always), что полезно, но недостаточно; Я хотел бы получить журналы с каждого из этапов. Я думал о том, чтобы, возможно, захватить их за этап и создать переменную среды или что-то в этом роде, но я не уверен, как даже получить доступ к журналам для сборки этих заданий. Может ли кто-нибудь указать мне правильное направление записи журналов для этих заданий?

1 Ответ

0 голосов
/ 27 июня 2019

Вы можете добавить раздел сообщения после любого этапа. И вы можете настроить электронную почту sendind там. Для отправки одного письма из сборки вы можете использовать команду stash / unstash. Вы можете спрятать логи в каждом разделе и, наконец, распаковать их и отправить электронное письмо.

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