zoukankan      html  css  js  c++  java
  • jenkins发送email邮件的配置

    jenkins发送email邮件的配置

    1、检查jenkins是否有email相关插件

    在jenkins首页选择Manage Jenkins(jenkins管理),然后点击Configure System(系统配置),检查是否有Extended E-mail Notification邮件通知的配置项。(ps:如果已经有这两个配置项的话,直接走第三步配置)

     

    2、安装email相关插件(Email Extension Plugin)

    方法一:在jenkins首页选择Manage Jenkins(jenkins管理),然后点击Manage Plugins(插件管理),选择可选插件,搜索对应的插件名称,点击【直接安装】。

    方法二:直接在jenkins官网中(https://plugins.jenkins.io/),找到下载插件的地方,搜索对应的插件进行下载,然后上传至jenkins中。(ps:我之前安装jenkins插件是使用方法二,分享一下之前下载的jenkins插件)

    链接:https://pan.baidu.com/s/186aGNq4B9H_z1aOsxKCEYw 
    提取码:j0vl

    在插件管理页面,选择高级,在上传插件中,点击选择文件,将刚才下载的插件进行上传。 

    上传完插件之后,需要重启jenkins服务。http://localhost:8080/restart

    3、配置jenkins的邮箱插件

    (配置之前需要确保对应邮箱的smtp服务已开启,未开启的话,先去开启smtp服务。具体可见https://www.cnblogs.com/wanglle/p/12838856.html

    在jenkins首页选择Manage Jenkins(jenkins管理),然后点击Configure System(系统配置),找到Extended E-mail Notification邮件通知的配置项。

    ①Extended E-mail Notification配置

    注意:需要点开【高级】选项,进行配置。

    具体配置如下:

    注意:Extended E-mail Notification配置时,需要点开【Default Triggers】,默认的邮件触发器,就是什么情况下触发邮件的发送,这里只设置了在构建失败和成功时发送邮件。

    ②邮箱通知配置

     

    一般在检查邮箱配置时,不可能有这么顺利成功,肯定是出现了各种报错信息(这边我只列举了自己遇到的报错及处理办法):

    • javax.mail.internet.AddressException: Illegal address in string ``''
      • 此报错信息是因为Jenkins Location中的系统管理员邮件地址未配置导致,系统管理员邮件地址需要与开通smtp服务的邮箱用户名保持一致。
    • com.sun.mail.smtp.SMTPSenderFailedException: 553 Local user only,163 smtp10,DsCowAAHN_ffc79eGD1wCA--.50235S2 1589605343
      • 此报错信息是因为Jenkins Location中的系统管理员邮件地址与开通smtp服务的邮箱用户名未保持一致,需要将系统管理员邮件地址与开通smtp服务的邮箱用户名保持一致。 
    • com.sun.mail.smtp.SMTPSenderFailedException: 553 authentication is required,163 smtp10,DsCowABnVsLbdL9eh7NwCA--.37451S2 1589605595
      • 暂时未找到处理办法

    4、选择某一job进行配置邮件发送

    ①选择某一job后,点击【配置】后,在job配置页面,找到【增加构建后操作步骤】,选择【Editable Email Notification】。

      ②配置【Editable Email Notification

    Default Subject【默认主题】为:xxxx接口自动化测试结果通知:Build # $BUILD_NUMBER - $BUILD_STATUS!

    Default Content【默认内容】如下:

    大家好,本次接口测试构建结果如下:
    <hr/>
    
    <!DOCTYPE html >
    <html>
    <head>
    <meta name="referrer" content="never">
    <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>
                <td>(本邮件是程序自动下发的,请勿回复!)</td>
            </tr>
            <tr>
                <td><h2>
                        <font color="#0000FF">构建结果 - ${BUILD_STATUS}</font>
                    </h2></td>
            </tr>
            <tr>
                <td><br />
                <b><font color="#0B610B">构建信息</font></b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td>
                    <ul>
                        <li>项目名称&nbsp;&nbsp;${PROJECT_NAME}</li>
                        <li>构建编号&nbsp;&nbsp;第${BUILD_NUMBER}次构建</li>
                        <li>触发原因:&nbsp;${CAUSE}</li>
                        <li>构建日志:&nbsp;<a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
                        <li>构建&nbsp;&nbsp;Url&nbsp;&nbsp;<a href="${BUILD_URL}">${BUILD_URL}</a></li>
                        <li>工作目录&nbsp;&nbsp;<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
                        <li>项目&nbsp;&nbsp;Url&nbsp;&nbsp;<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td><b><font color="#0B610B">Changes Since Last
                            Successful Build:</font></b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td>
                    <ul>
                        <li>历史变更记录 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a></li>
                    </ul> ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:<br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat="&nbsp;&nbsp;&nbsp;&nbsp;%p"}
                </td>
            </tr>
            <tr>
                <td><b>Failed Test Results</b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td><pre
                        style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">$FAILED_TESTS</pre>
                    <br /></td>
            </tr>
        </table>
    
    </body>
    </html>
    <b>${FILE,path="E:Jenkinsworkspaceykt_jmeter_api_auto_test	est.html"}</b>

     

     5、构建添加发送邮件的job,查看邮件是否能成功发送。

        

    
    
    
  • 相关阅读:
    return
    debug_backtrace final catch
    Exponential Backoff
    2014 MapReduce
    Extract, Transform, Load
    Factorization of a 768-bit RSA modulus
    奇偶校验 汉明码 如果一条信息中包含更多用于纠错的位,且通过妥善安排这些纠错位使得不同的出错位产生不同的错误结果,那么我们就可以找出出错位了。 crc CRC 循环冗余校验
    An Explanation of the Deflate Algorithm
    通过极限手续定义正数的无理指数方幂
    算术根的存在唯一性
  • 原文地址:https://www.cnblogs.com/wanglle/p/12899896.html
Copyright © 2011-2022 走看看