紧接上一篇博文继续来完善Jenkins自动构建环境的搭建,今天来分享下配置邮件,构建任务后,自动发送邮件到指定邮箱

配置邮件分为两部分,第一部分是在系统管理中的系统设置中配置,第二部分是在任务中配置

一、系统管理中配置

1.登录jenkins,点击系统管理中的系统设置,如下:

jenkins配置邮件发送 jenkins 发送邮件_运维

2.配置系统管理员邮件地址,这个是必须配置的,需要注意,不然会导致邮件的发送失败

jenkins配置邮件发送 jenkins 发送邮件_系统管理_02

3.拖动设置页面,看到Extended E-mail Notification,这个地方就是配置邮件的

jenkins配置邮件发送 jenkins 发送邮件_发送邮件_03

邮箱的授权密码获取方式如下:

jenkins配置邮件发送 jenkins 发送邮件_jenkins配置邮件发送_04

点击生成授权码,即可获取对应的密码,复制进来,输入到密码输入框中即可

jenkins配置邮件发送 jenkins 发送邮件_运维_05

继续往下配置

jenkins配置邮件发送 jenkins 发送邮件_jenkins配置邮件发送_06

4.配置邮件正文,此处可以不配置,在任务中配置时,也可以配置邮件正文

jenkins配置邮件发送 jenkins 发送邮件_系统管理_07

邮件正文模板



<!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>构建编号 : 第${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>    

<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/>

<h4><font color="#0B610B">最近提交(#$SVN_REVISION)</font></h4>
<hr size="2" width="100%" />
<ul>
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>

            </td>    
        </tr>    
    </table>    
</body>    
</html>



5.配置默认邮件触发器,如下

jenkins配置邮件发送 jenkins 发送邮件_系统管理_08

有多种触发情况,可以根据自己的实际情况配置,如下:

jenkins配置邮件发送 jenkins 发送邮件_系统设置_09

6.配置好这些后,测试下邮件功能配置的是否正确,如下:

jenkins配置邮件发送 jenkins 发送邮件_jenkins配置邮件发送_10

输入邮箱点击Test configuration按钮,出现Email was successfully sent即表示邮件发送测试成功,如下:

jenkins配置邮件发送 jenkins 发送邮件_系统管理_11

查看邮箱,收到该测试邮件

jenkins配置邮件发送 jenkins 发送邮件_发送邮件_12

 经过上述步骤,在系统管理中的邮箱配置,就完成了,也成功了,点击保存按钮,使配置生效

将上述的配置项,特别重要的集中梳理下,

①Default Content Type

默认的邮件内容格式,文本类型或HTML类型

②Default Recipients        

设置默认的邮件接收人,设置后就可以在任务的配置中使用$DEFAULT_RECIPIENTS来直接发送邮件,非常方便        

具体的格式抄送用“cc:”前缀,密送用“bcc:”前缀,不使用前缀默认为收件人;多个接收人,用逗号分割,譬如cc:someone@example.com, bcc:bob@example.com

③Default Subject        

默认的邮件主题,$BUILD_NUMBER , $BUILD_STATUS!构建的编号和构建的状态,具体可以超看界面下方的“Content Token Reference”帮助,里面列出了所有的变量

④Default Content       

默认内容,这步可以省略,具体可以到任务的配置中去设置

⑤Default Triggers      

默认的邮件触发器,就是什么情况下触发邮件的发送

 二、任务中邮箱配置

点击具体任务的配置,进入到任务配置页进行配置

1.发送邮件是在构建后操作中设置,添加插件Editable Email Notification,如下,如果没有,需要安装该插件,安装方式就略过了

jenkins配置邮件发送 jenkins 发送邮件_jenkins配置邮件发送_13

进行相应的配置,需要注意的是,比如标题,正文在系统管理中设置了,在任务中也设置了,会以任务的设置优先,也可以引用系统设置中的配置,比如,收件人用$DEFAULT_RECIPIENT来引用

jenkins配置邮件发送 jenkins 发送邮件_发送邮件_14

2.点击高级设置,可以按构建的情况触发邮件

jenkins配置邮件发送 jenkins 发送邮件_发送邮件_15

设置收件人列表

jenkins配置邮件发送 jenkins 发送邮件_发送邮件_16

将生成的报告添加在邮件中,做为附件一并发送,配置如下:

jenkins配置邮件发送 jenkins 发送邮件_系统设置_17

Attachments默认路径是jenkins的工作路径,所以此处只需要设置报告的相对路径即可

三、构建任务

配置好后,将配置保存,来构建一次,查看构建任务控制台输出

jenkins配置邮件发送 jenkins 发送邮件_jenkins配置邮件发送_18

查看邮件,如下:

jenkins配置邮件发送 jenkins 发送邮件_系统设置_19

这样一步步操作配置下来,任务构建后,成功收到邮件,还是一件很有意义的事情,很充实,希望对正在配置jenkins邮件的人们有所帮助,不早了,大家早点休息。