我在管道詹金斯工作中使用以下步骤:
step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: 'my@xyz.com', sendToIndividuals: true])
但是当构建失败(即错误)时,没有发送电子邮件。任何指针为什么?
PS电子邮件可以从此服务器发送,我已经测试过了。
使用新语法使用声明性管道,例如:
pipeline { agent any stages { stage('Test') { steps { sh 'echo "Fail!"; exit 1' } } } post { always { echo 'This will always run' } success { echo 'This will run only if successful' } failure { mail bcc: '', body: "<b>Example</b><br>\n\<br>Project: ${env.JOB_NAME} <br>Build Number: ${env.BUILD_NUMBER} <br> URL de build: ${env.BUILD_URL}", cc: '', charset: 'UTF-8', from: '', mimeType: 'text/html', replyTo: '', subject: "ERROR CI: Project name -> ${env.JOB_NAME}", to: "foo@foomail.com"; } unstable { echo 'This will run only if the run was marked as unstable' } changed { echo 'This will run only if the state of the Pipeline has changed' echo 'For example, if the Pipeline was previously failing but is now successful' } } }
您可以在詹金斯官方网站上找到更多信息:
https://jenkins.io/doc/pipeline/tour/running-multiple- steps/
请注意,这种新语法使您的管道更具可读性,逻辑性和可维护性。