欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Jenkins学习(2)——Jenkins邮件通知学习

程序员文章站 2022-06-17 13:14:33
...

       首先,Jenkins邮件通知的密码是客户端的授权码而不是邮箱的密码,请务必搞清楚。设置邮件需要修改三个部分:1、修该邮箱的SMTP授权开启并获取客户端授权码;2、Jenkins系统设置设置管理员邮箱;3、设置邮件通知。完成以上三步就可以实现Jenkins邮件通知了。下面以QQ邮箱为例进行讲解。

      在QQ邮箱的首页,点击设置进入设置页面。

Jenkins学习(2)——Jenkins邮件通知学习       进入设置页面,切换到帐户选项卡中

Jenkins学习(2)——Jenkins邮件通知学习

      鼠标下移至:POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启相关SMTP服务。注意保留在开启服务后,生成的授权码,在Jenkins邮箱设置中会用到。点击保存更改。

Jenkins学习(2)——Jenkins邮件通知学习

      jenkins自带有邮件通知的功能

      在“系统管理”–>"系统设置"中的”邮件通知“模块可以配置邮件通知,在配置之前应先配置”jenkins Location“中的系统管理员邮箱,然后配置管理员邮箱的账户密码信息,如下图:

Jenkins学习(2)——Jenkins邮件通知学习

      进入系统设置后,向下滑动滚轮至邮件通知部分,输入SMTP服务器并勾选使用SMTP认证,填写好认证信息后,点击右下方TestConfiguration进行邮件发送测试。

Jenkins学习(2)——Jenkins邮件通知学习

邮件通知设置完成后,需要进入Jenkins需要发送邮件通知的部署任务下进行构建后操作配置:

Jenkins学习(2)——Jenkins邮件通知学习

      设置好邮件的接收人信箱点击保存。

Jenkins学习(2)——Jenkins邮件通知学习

至此,邮件通知配置完毕,我故意使任务构建失败,如下图:

Jenkins学习(2)——Jenkins邮件通知学习

邮箱接收到错误日志如下图:

Jenkins学习(2)——Jenkins邮件通知学习

      以上便是系统默认的邮件通知,但系统默认的邮件通知本身有很多局限性,比如它的邮件通知无法提供详细的邮件内容、无法定义发送邮件的格式、无法定义灵活的邮件接收配置等等。在这样的情况下,我们找到了Email Extension Plugin。该插件能允许你自定义邮件通知的方方面面,比如在发送邮件时你可以自定义发送给谁,发送具体什么内容等等。

      在”系统管理“-->"管理插件"中安装Email Extension Plugin插件。

Jenkins学习(2)——Jenkins邮件通知学习

      插件安装完成后,进入Jenkins系统设置。

Jenkins学习(2)——Jenkins邮件通知学习

进入系统设置后,鼠标向下滚动至Extendend E-mail Notification 配置项处进行如下设置:

Jenkins学习(2)——Jenkins邮件通知学习Jenkins学习(2)——Jenkins邮件通知学习

配置完成后,同样需要进入Jenkins需要发送邮件通知的部署任务下进行构建后操作配置:

Jenkins学习(2)——Jenkins邮件通知学习对构建后Editable Email Notification 邮件发送进行配置

Jenkins学习(2)——Jenkins邮件通知学习Jenkins学习(2)——Jenkins邮件通知学习

相关设置说明

Default Recipients:自定义默认电子邮件收件人列表

Reply To List:回复列表

Emergency reroute:如果这个字段不为空,所有的电子邮件将被单独发送到该地址

Default Subject:自定义邮件通知的默认主题名称。

Maximum Attachment Size:邮件最大附件大小。

Default Content:自定义邮件通知的默认内容主体。

点击“Default Triggers”下的高级选项,选择默认的邮件通知触发器

任务执行结果:

Jenkins学习(2)——Jenkins邮件通知学习

通知邮件内容如下图:

Jenkins学习(2)——Jenkins邮件通知学习

注:当两种构建后操作同时存在时,在Jenkins构建完成后会发送两次邮件

Jenkins学习(2)——Jenkins邮件通知学习

收到两封邮件:

Jenkins学习(2)——Jenkins邮件通知学习

 

相关标签: Jenkins