Jenkins构建后发送邮件通知
网上有很多教程,可是,enmmm有点儿乱,一个简单的功能折腾了很久。对于一些我过程中遇到的疑问这里做个简单解释。
前提:博主使用的是qq邮箱,因为公司邮箱我没有找到我们的SMTP服务器是啥。邮箱的不同,配置的时候有区别就是SMTP服务器的默认地址。
各邮箱SMTP服务器相关信息可以百度查到:
邮箱名称 | SMTP服务器地址 | SMTP端口号 |
qq邮箱 | smtp.qq.com | 25 |
qq企业邮箱 | smtp.exmail.qq.com | 25 |
很多教程里面的SMTP端口号用的是465,这是因为选择了SSL加密方式登录
要想每次发邮件通知构建结果,总的简单过程就分为三步,邮件的具体格式以及更详细的设置可以再进一步配置。
第一步:
(1)Jenkins确保有相应插件:extend E-mail Notification
(2)在QQ邮箱开启SMTP服务
设置->账户
(应该开启一个就可以)开启的时候会弹出一个码,留着,一会儿用
第二步:
进入Jenkins系统管理 -> 系统设置
在Jenkins Location、邮件通知 配置相关内容
(1)
(2)
配置完之后,可以先测试一下是否成功
可以随便填一个接受邮箱,我这儿还填的我的邮箱,单击右下角发送测试文件,配置成功显示successfully,如果配置不对会提示报错。
常见错误码:
如果配置的password不是授权码 会提示535,与系统用户邮箱不一致会提示501 ,邮箱服务SMTP server 配置错误提示550测试成功之后就可以去邮箱里看是否有测试邮件了,因为我配置的发件人是我的QQ邮箱,收件邮箱也是我的QQ邮箱,所以邮件显示的就是我自己发了个邮件给我自己
第三步
去具体项目中配置构建后发送邮件服务
这两个都可以实现,只不过下面这个可扩展性强一些,可以将来配置更复杂的邮件通知。
简单的邮件通知只需要配置三个地方即可:
(1)邮件接收者列表,可以写多个,我这儿写的我自己
(2)Attach Build Log中选择邮件内容中添不添加构建日志,我这里选择了添加,然后点击更多设置,配置Triggers
(3)很好理解,这里可以选择什么样的构建结果发送通知,最常见的就是失败和成功,我这里选择每一次构建都发送给Recipient List,还可以选择发送给这次构建的发起者等等
还想要更多更详细的配置,比如邮件内容的格式等,可以再Jenkins系统管理 -> 系统设置中,配置Extended E-mail Notification里面的内容,如下图。
除此之外,也可以扩展每个构建中的Editable Email Notification
到这就配置全部完成了,每次的构建结果都会发送到QQ邮箱,还带着日志附件。这是我的构建结果通知。
总结:配置之前感觉乱七八糟有一堆东西要填,实际上梳理之后也比较清晰。总体的配置过程好像就是给Jenkins配置(成)了一个邮箱,让它可以给其他人(构建中写的收件人)发邮件。
补充一下:
可以在QQ邮箱中自定义一个文件夹来存Jenkins发来的邮件,这样便于查看和管理,也不会把收件箱搞乱
(1)新建一个文件夹
(2)添加收信规则
有很详细的规则可供选择,我这里把主题中包含Build的邮件,以及发件人是我自己的邮件移入Jenkins文件夹,这样每次新来邮件可以直接去文件夹看了,不会弄乱收件箱。
好了,休息了。
好啦,一枚暴风成长的工作小白,一起学习!nice!