【Jenkins】配置邮件自动发送
一、安装插件
email-ext.hpi
插件安装方式参考Jenkins的四种插件安装方式
二、设定管理员邮箱
Manager Jenkins -> Configure System -> Jenkins Location
系统管理员邮箱地址将作为未来邮件的发件方,收件方可以在每个构建中各自指定(步骤)。
三、配置邮件通知
Manager Jenkins -> Configure System -> E-mail Notification
1、设定使用的SMTP服务器
如果是常规的邮箱直接去邮箱设置里面查看即可SMTP服务器即可,内网邮箱或者自行搭建的内部邮件系统可能需要询问搭建人员。
使用的邮箱需保证开启了SMTP服务,开启方式:登录邮箱界面 -> 设置 -> 开启服务。
设置界面下滑可以看到SMTP服务器。
2、设定使用的SMTP认证信息
步骤1中点击高级之后出现认证信息,认证信息可以输入邮箱的账号完整的账号密码,也可以使用邮箱名(不带后缀)作为用户名,获取授权码作为密码,示例中使用的是邮箱名+授权码的认证方式。
一般情况下,比如使用一些常见的邮箱(qq、网易等)仅支持邮箱名+授权码的认证方式,只有少数情况,比如自搭邮件系统、内部网络、自定义域才可以使用账号+密码的登陆方式。
SMTP端口的选择可以基于具体要求,如果选择使用SSL,则需使用465端口并勾选使用SSL协议,如果不使用SSL则使用25端口即可,示例中使用的是SMTP over SSL的方式进行配置
关于端口号的含义可以参考:什么是SMTP端口号(25、587、465、2525)?
首次开启SMTP时会出现一个授权码,该授权码仅显示一次,此后如果需要获取授权码则可以选择新增授权密码。
点击新增授权密码后用手机扫码,使用绑定的手机号发短信即可获得一个新的授权码。
3、测试是否配置成功
勾选Test configuration by sending test e-mail后会出现测试框,在测试框中填入收件方邮箱后点击Test configuration,即会发送一封邮件到收件方邮箱中,如发送成功则该界面会显示Email was successfully sent,否则将会显示错误信息。
若发送成功则收件方可以收到一封测试邮件,邮件中包含测试次数的信息,发送失败不会收到邮件但是也会被计数。
四、配置扩展邮件通知
Manager Jenkins -> Configure System -> Extended E-mail Notification
1、设定使用的SMTP服务器(同邮件通知)
2、设定使用的SMTP认证信息(同邮件通知)
选择高级后添加SMTP的认证并启用SSL。
若已经添加过证书则直接选用即可,若没有则需添加证书。
添加证书,认证方式同上完整邮箱的账号密码 / 邮箱名+授权码。
五、在构建项目时加入邮件通知
1、添加构建后操作
在构建项目时增加构建后操作步骤:Editable Email Notification
2、设置邮件接收列表
在Project Recipient List中加入收件邮箱,若有多个收件邮箱使用英文逗号分隔即可。
3、设置邮件格式,标题及内容
分享一个我个人比较喜欢用的邮件模板:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0"> <table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif"> <tr> 本邮件由系统自动发出,无需回复!<br/> 各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br> <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td> </tr> <tr> <td><br /> <b><font color="#0B610B">构建信息</font></b> <hr size="2" width="100%" align="center" /></td> </tr> <tr> <td> <ul> <li>项目名称 : ${PROJECT_NAME}</li> <li>项目描述 : ${JOB_DESCRIPTION}</li> <li>构建编号 : 第${BUILD_NUMBER}次构建</li> <li>触发原因: ${CAUSE}</li> <li>构建状态: ${BUILD_STATUS}</li> <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li> <li>构建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li> <li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li> <li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li> </ul> </td> </tr> <tr> <td><b><font color="#0B610B">变更集</font></b><hr size="2" width="100%" align="center" /></td> </tr><td>${JELLY_SCRIPT,template="html"}<br/><hr size="2" width="100%" align="center" /></td> </tr></table>
</body>
</html>
邮件发送效果图:
如果从上次构建结束到此次构建开始的时间中svn进行了更新,则可以显示每一版本变更的文件及操作者。
3、选择是否发送构建日志作为邮件附件
Do Not Attach Build Log:不发送构建日志
Attach Build Log:发送构建日志
Compress and Attach Build Log:压缩并发送构建日志
如果需要发送构建日志建议使用Attach Build Log,这样很多的邮箱客户端可以直接打开附件进行查看,如outlook。
4、设置发送契机
不同的测试结果可以选择发给不同的收件方,但是邮件模板只能使用同一个。
【Jenkins】配置邮件自动发送相关推荐
- Jenkins 配置邮件通知
Jenkins是一个很受欢迎的CI持续集成工具,能够实现项目的自动构建.打包.测试.发布等.还可以在构建失败.构建不稳定等状态后发送邮件通知.现介绍一下如何在Jenkins中配置实现邮件通知. 在Je ...
- Jenkins配置邮件通知服务,完整教程(含发送成功无法接收邮件处理方案)
前言:涂涂改改,查查找找,不知不觉又三点了,废话不多说直接上教程. 准备事项: 1.安装Email Extension Plugin插件 2.安装Date Parameter插件(一个可使用的时间函数 ...
- Jenkins配置邮件发送
配置邮件发送 一.前言 二.配置步骤 一.前言 之前讲了Jenkins按照设定自动构建任务,那个构建结果是不是也该自动发给用户呢?本文来看看Jenkins如何自动将构建结果通过邮件发给用户. 二. ...
- Jenkins配置邮件通知(2)——配置邮件模板
最终,还是要写这篇文章哦-- 不知道你是不是和我一样,是把Jenkins部署在windows上的, 先说一下我的背景:我是使用Pytest+Selenium+Allure来做UI的自动化测试,我需要把 ...
- Jenkins(10) 配置邮件通知
文章目录 一.前言 二.安装插件`Email Extension Plugin` 三.配置邮件通知 1.设置系统管理员邮件地址 2.配置邮件通知`Extended E-mail Notificatio ...
- 持续集成(四)Jenkins配置报警机制
前言 本章主要讲述:Jenkins报警机制的配置 流程简单来说: 就是在jenkins中配置好email后, 运行任务时我们添加邮件触发器,当任务失败或者成功时,自动发送邮件 一.配置Email 1. ...
- Jenkins配置自动发送邮件(包括allure测试报告)
下载插件 系统配置 进入Jenkins>系统管理>系统配置>Extended E-mail Notification 按照下图所示进行配置即可. 注意: jenkins系统管理员邮件 ...
- 基于Jacoco+Maven+Jenkins配置的单元测试覆盖率报告实践
最近,系统重构,要求对底层基础服务加入单元测试用例,而我被安排产出单元测试覆盖率报告. 第一版比较简单,只是一个简单的测试报告,并无具体覆盖率 1. 针对maven项目,pom配置 <repor ...
- Jenkins之邮件通知
完成基于jenkins的持续集成部署后,任务构建执行完成,测试结果需要通知到相关人员.这篇博客,介绍如何在jenkins中配置邮件通知的方法... 一.安装邮件插件 由于Jenkins自带的邮件功能比 ...
最新文章
- Mask-RCNN技术解析
- 利用机器学习算法对实验室小鼠的睡眠阶段自动分类
- QMainWindow多线程demo
- 同学录APP开题报告 2017-12-14
- django filter查询多选_Django:使用filter的pk进行多值查询操作
- 细说ASP.NET Core与OWIN的关系
- 数据结构与算法--分治算法-最大子序列和问题
- 最小生成树KrusKal算法(并查集)
- 一百馒头一百僧,大僧三个更无争,小僧三人分一个大小和尚得几丁?
- Lambdas中的例外:有点混乱的优雅解决方案
- xadmin 显示外键字段
- APP爬虫之央视新闻
- 图神经网络与图注意力网络相关知识概述
- 【半导体物理】笔记 柴常春 西安电子科技大学 更新ing...
- 潍坊学院计算机打破世界纪录,牛!2017 ASC世界大学生超级计算机总决赛 潍坊学院每秒31.7万亿次峰值计算刷新世界纪录...
- 5-TDengine集成SpringBoot,MyBatis,MyBatisPlus
- 互联网应届生四项职场生存技能
- P315 static关键字
- C语言运算符与表达式课件,C语言课件(运算符和表达式).ppt
- js中的函数防抖和函数节流