侧边栏壁纸
博主头像
张种恩博主等级

一个能运维的 JPG 搬运工

  • 累计撰写 703 篇文章
  • 累计创建 60 个标签
  • 累计收到 24 条评论

Jenkins 邮件通知

张种恩
2020-12-21 / 0 评论 / 0 点赞 / 280 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2020-12-21,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

mailer - 文本邮件

Jenkins 默认通过 mailer 插件提供了邮件通知的功能,使用方式如下。

进入 系统管理 -> 系统配置,配置 系统管理员邮件地址

image.png

邮件服务器相关配置:

image.png

接下来就可以在 pipeline 使用 mail 步骤来发送邮件了:

mail body: 'test content', from: '632404164@qq.com', subject: 'jenkins test email', to: '632404164@qq.com'

邮箱收到的邮件如下:

image.png

Email Extension - HTML 邮件

Email Extension 插件对 mailer 插件进行了扩展,支持更多的特性:

  • 可以定制接收人的邮件列表。
  • 可以将构建日志以附件形式加到邮件中,还可以设置对日志进行压缩。
  • 可以发送附件。

进入 系统管理 -> 系统配置,找到 Extended E-mail Notification 做如下配置:
image20201221160135053.png

image20201221160157254.png

接下来就可以在 pipeline 使用 emailext 步骤来发送邮件了:

emailext body: '<h1>test content</h1>', 
                    compressLog: true, 
                    attachLog: true, 
                    recipientProviders: [culprits(), developers(), requestor(), brokenBuildSuspects()],
                    replyTo: '632404164@qq.com',
                    subject: "Status: ${currentBuild.result?:'SUCCESS'} - Job \'${env.JOB_NAME}:${env.BUILD_NUMBER}\'",
                    to: '632404164@qq.com'

这里对上述参数做一下介绍:

  • subjectString 类型,邮件主题。

  • bodyString 类型,邮件内容。

  • attachLog(可选):Bool 类型,是否将构建日志以附件形式发送。

  • attachmentsPattern(可选):String 类型,需要发送的附件的路径,Ant 风格路径表达式。

  • compressLog(可选):Bool 类型,是否压缩日志。

  • from(可选):String 类型,收件人邮箱。

  • to(可选):String 类型,发件人邮箱。

  • recipientProviders(可选): List 类型,收件人列表类型。

  • replyTo(可选):回复邮箱。

常用的收件人列表类型有如下几个:

  • culprits():引发构建失败的人。最后一次构建成功和最后一次构建失败之间的变更提交者列表;
  • developers():此次构建所涉及的变更的所有提交者列表;
  • requestor:请求构建的人,一般指手动触发构建的人(会读取登录用户的邮箱,在个人资料设置页可以设置);
  • upstreamDevelopers():上游 Job 变更提交者的列表;

完整说明可参考:https://www.jenkins.io/doc/pipeline/steps/email-ext/

邮箱收到的邮件如下:

image.png

如果你测试发送邮件不成功可以开启插件的 DEBUG 模式,然后控制台就会输出发送邮件的详细信息:

image.png

0

评论区