Дженкинс не отправляет электронное письмо, если набор изменений не пуст и статус не является ошибкой

У меня происходит что-то действительно странное.

Я использую сценарий jenkins для отправки электронного письма с плагином электронной почты ext и шаблоном groovy-html.template. Электронное письмо отправляется правильно, если набор изменений пуст или если результат сборки является неудачным, но если результат сборки находится в (УСПЕХ, НЕСТАБИЛЬНО) и набор изменений не пуст, я никогда не получаю электронное письмо ... Я просмотрел все журналы jenkins и не обнаружил ошибок, которые могли бы объяснить такое поведение. Проблема также возникает с шаблонами писем jelly html или отличным текстом.

Есть идеи, почему у меня такое поведение?

Вот мой код:

emailext(
        subject: 'Deployment',
        body: '${SCRIPT, template="groovy-html.template"}',
        to: '[email protected]')

А вот и полный конвейер.


person Maxime Lem    schedule 20.01.2020    source источник
comment
Вы можете показать нам раздел кода из emailext?   -  person RNoB    schedule 20.01.2020
comment
шаблон является шаблоном groovy-html по умолчанию, github.com/jenkinsci/email-ext-plugin/blob/master/src/main/   -  person Maxime Lem    schedule 20.01.2020
comment
а вот конвейер: gist.github.com/emexelem/f84aabb2f4e49elem/f84aabb2b4e49ebe2 , я получаю письмо, если оставлю комментарий - нет.   -  person Maxime Lem    schedule 20.01.2020
comment
Не думаю, что проблема с html-шаблоном. Можете ли вы попробовать без скобок, потому что вы используете конвейер со сценариями: emailext subject: 'Deployment', body: '${SCRIPT, template="groovy-html.template"}', to: '[email protected]'   -  person RNoB    schedule 20.01.2020
comment
пробовала без подтяжек, ничего не меняет. Хотя я обнаружил, что электронное письмо принимается правильно, если я переключаюсь на свой личный адрес электронной почты, который находится в Gmail. Похоже, проблема в моей профессиональной электронной почте. По какой-то причине письмо, кажется, было перехвачено антиспамом или чем-то еще, когда сборка прошла успешно и имеет набор изменений ... Я также обнаружил, что стили html не отображаются должным образом в gmail. Я исправил это, включив раздел стиля под ‹! DOCTYPE html› ‹html› ‹head› в шаблоне электронного письма.   -  person Maxime Lem    schedule 20.01.2020


Ответы (1)


Хотите попробовать использовать декларативный конвейер?

изменить этот раздел

node('master') {
    checkout(scm: [$class: 'GitSCM', 
        branches: [[name: "*/develop"]],
        extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'repo1']], 
        userRemoteConfigs: [[credentialsId: 'bitbucket.jenkins', 
        url: 'urlToRepo.git']]],
        changelog: true, poll: true)

    showChangeLogs()

    //currentBuild.result = 'FAILURE'

    emailext(
        subject: 'Deployment',
        body: '${SCRIPT, template="groovy-html.template"}',
        to: '[email protected]')
}

этим

pipeline {
    agent any
    stages {
        stage('master') {
            steps {
                script {
                    checkout(scm: [$class: 'GitSCM', 
                        branches: [[name: "*/develop"]],
                        extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'repo1']], 
                        userRemoteConfigs: [[credentialsId: 'bitbucket.jenkins', 
                        url: 'urlToRepo.git']]],
                        changelog: true, poll: true)

                    showChangeLogs()

                    //currentBuild.result = 'FAILURE'

                }
            }
        }
    }
    post { 
        always { 
            emailext(
                subject: 'Deployment',
                body: '${SCRIPT, template="groovy-html.template"}',
                to: '[email protected]')
        }
    }
}
person fredericrous    schedule 20.01.2020