Не удалось получить электронное письмо для запуска в моем конвейере Jenkins - PullRequest
0 голосов
/ 28 января 2019

Я погружаюсь в мир конвейеров Jenkins.

Моя цель - запустить простой скрипт, который запускает простую команду в linux bash, а затем отправляет электронное письмо после его завершения.Вот мой сценарий:

pipeline {
agent any


stages {
    stage('Stage-One') {
        steps {
            script {
                sh "echo 'hi'"

            }
        }
    }
}


post {
    always {
            script {
                emailext body: 'A Test Email', 
                recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']],
                to: "example@server.com", 
                subject: 'Test'
            }
    }
}
}

В моем случае я установил рабочий адрес в качестве своего электронного адреса в настройках E-mail Notification в Jenkins -> Configuration.Я использую ту же электронную почту для отправки электронных писем в других проектах Jenkins (т. Е. Для запуска сценариев / проектов Python), так что это должно работать.На практике, однако, электронное письмо не получено, и просмотр учетной записи электронной почты, отправляющей письмо, показывает, что электронное письмо не было отправлено.

В выходных данных консоли также отсутствуют ошибки, но также нет сообщений, указывающих на успех:

[Pipeline] {
[Pipeline] stage
[Pipeline] { (Stage-One)
[Pipeline] script
[Pipeline] {
[Pipeline] sh
+ echo hi
hi
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Declarative: Post Actions)
[Pipeline] script
[Pipeline] {
[Pipeline] emailext
Sending email to: example@server.com
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS

Моя версия Jenkins - 2.150.1, а версия расширения электронной почты - 2.63.Кто-нибудь может обрисовать, где проблема может быть здесь?Странно, я не получаю никакой ошибки. *

1 Ответ

0 голосов
/ 28 января 2019

Попробуйте этот трюк определения тела перед электронным письмом

def emailBody = 'A Test Email'
def emailSubject = "Test"
emailext(mimeType: 'text/html', replyTo: 'xxxx', subject: emailSubject, to: 'xxxx', body: emailBody)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...