Jenkinsfile: отправка почты всем пользователям, перечисленным в «Люди» - PullRequest
0 голосов
/ 01 февраля 2019

Я хотел бы отправить уведомление по электронной почте всем пользователям, перечисленным на вкладке Люди в виде задания: Jenkins job view

Публикация Использование почтовой рассылки Jenkins 'Внутренний рабочий процесс показывает, как отправлять уведомления по электронной почте в Jenkinsfile:

emailext(body: '${DEFAULT_CONTENT}', mimeType: 'text/html',
         replyTo: '$DEFAULT_REPLYTO', subject: '${DEFAULT_SUBJECT}',
         to: emailextrecipients([[$class: 'CulpritsRecipientProvider'],
                                 [$class: 'RequesterRecipientProvider']]))

Я изменил его, чтобы отправлять электронные письма, только если сборка не удалась или была исправлена, вдохновлено комментарием Джастина Саймонса вhttps://baptiste -wicht.com / posts / 2017/06 / jenkins-tip-send-notifications-fixed-builds-декларативный-pipe.html # comment-3478592834 :

mailNotificationAlreadySend = false

pipeline {

    ...

    stages {
    ...
    }

    post {
        changed {
            sendMailNotification()
        }
        failure {
            sendMailNotification()
        }
    }
}

void sendMailNotification() {

    if (!mailNotificationAlreadySend) {

        emailext(body: '${DEFAULT_CONTENT}', mimeType: 'text/html',
                replyTo: '$DEFAULT_REPLYTO', subject: '${DEFAULT_SUBJECT}',
                recipientProviders: [[$class: 'DevelopersRecipientProvider'],
                                     [$class: 'CulpritsRecipientProvider']]
        )

        mailNotificationAlreadySend = true
    }
}

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

Как настроить метод emailext для отправки писем всем пользователямперечислены на вкладке Люди в представлении заданий?

Я уже пробовал все получатели получателей, доступные в https://github.com/jenkinsci/email-ext-plugin/tree/master/src/main/java/hudson/plugins/emailext/plugins/recipients, но безуспешно.

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