Jenkins Pipeline模式 失败时,发送邮件

Jenkins Pipeline模式 失败时,发送邮件:

pipeline 脚本,添加 post 部分,job 构建成功或者失败时发送邮件
•subject:邮件主题,可以自定义
•body:邮件正文,可以自定义
•to:收件人列表,根据实际情况定义
•from:发件人,要和步骤 1 配置的发件人一致

pipeline { 
    agent any 

    parameters {
        省略内容……
    }
    environment {
        省略内容……
    }
    stages {
        省略内容……
    }
    post {
        success {
            emailext (
                subject: "SUCCESSFUL: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
                body: """<p>SUCCESSFUL: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
                    <p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>""",
                to: "user1@qq.com,user2@qq.com",
                from: "admin@sina.com"
            )
        }
        failure {
            emailext (
                subject: "FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
                body: """<p>FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
                    <p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME}          [${env.BUILD_NUMBER}]</a>"</p>""",
                to: "user1@qq.com,user2@qq.com",
                from: "admin@sina.com"
            )
        }
    }
}


### Jenkins 发送邮件并添加附件的配置方法 为了使 Jenkins 能够在发送电子邮件通知附带文件,需安装 Email Extension Plugin 插件[^1]。此插件提供了扩展功能来支持复杂的邮件设置。 #### 安装Email Extension Plugin 前往 **Manage Jenkins** -> **Manage Plugins**, 在可用标签页中查找 `Email Extension Plugin` 并完成安装过程。 #### 配置全局属性 进入 **Manage Jenkins** -> **Configure System** 页面,在 "Extended E-mail Notification" 下找到 “Default Attachments Pattern”。这里可以定义默认情况下随每封邮件一起附加的文件模式。例如: ```bash ${WORKSPACE}/**/*.zip, ${WORKSPACE}/build/reports/*.html ``` 上述表达式会匹配工作区内的 .zip 文件以及 reports 目录下的 HTML 报告。 对于特定作业中的自定义附件路径设定,则可以在该任务的具体配置里指定相应的字段。当触发邮件事件(比如构建失败),这些位置上的文档会被作为附件一同发出。 #### 单独项目级别的配置 针对单个项目/管道的需求调整,可在对应 Job 的配置界面内操作。选择 **Post-build Actions** 或者 Pipeline Script 中加入如下 Groovy 语句实现相同效果: 对于传统风格的任务: - 勾选 **Editable Email Notification** - 进入高级选项后填写 **Attachments** 如果是基于声明式的流水线脚本形式,可参照下面的例子编写代码片段: ```groovy post { always { emailext ( to: 'example@example.com', subject: "${env.JOB_NAME} - Build #${env.BUILD_NUMBER}", body: '''Build has finished. Please find attached the relevant files.''', attachmentsPattern: '**/target/*.jar,**/reports/*.pdf' ) } } ``` 这段脚本会在每次执行完毕之后向预设收件箱传送带有 JAR 包和 PDF 文档在内的压缩包[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值