Jenkins管道 - 通过电子邮件

时间:2017-05-17 11:14:57

标签: jenkins jenkins-pipeline

目前我已经使用Jenkinsfile配置了一个作业,以便在发生故障时发送通知。

catch (err) {
    currentBuild.result = "FAILED"
    mail (to: 'viveky4d4v@gmail.com',
         subject: "Job '${env.JOB_NAME}'- (${env.BUILD_NUMBER}) has FAILED",
         body: "Please go to ${env.BUILD_URL} for more details. ");

    throw err
}

如果作业失败,是否可以在电子邮件中发送控制台日志?

2 个答案:

答案 0 :(得分:3)

如果您安装了https://wiki.jenkins-ci.org/display/JENKINS/Email-ext+plugin中找到的电子邮件扩展插件,则可以使用其他参数执行此操作。看起来像这样:

emailext attachLog: true, body: '', subject: ''

这会将日志作为txt文件附件附加到您的电子邮件中,这是我个人使用的方法。

或者,或者,如果您不介意“发送控制台日志”以表示“将URL发送到控制台日志”,您可以执行类似于jozefow建议的操作并将正文更改为...

body: "Please go to ${env.BUILD_URL}/consoleText for more details. ");

答案 1 :(得分:1)

您可以下载控制台日志并将其附加到电子邮件中。 通过运行命令从当前版本获取日志: wget $ {env.BUILD_URL} / consoleText -O console_text.txt