zoukankan      html  css  js  c++  java
  • jenkins 邮箱配置

     

    基础邮箱配置这里其实本质上调用的第三方的SMTP服务器来发送你的邮件,比如腾讯和网易家的,其原理简单来说,就是你在邮箱的设置里面开通了相关设置,完事给你一个授权码(要牢记该授权);然后你在借助其提供的SMTP服务的时候,其实是通过登录你的用户名和授权码来登录服务器,帮你完成发送过程。
    如何开通和获取授权码:

    来看配置过程:

    1. Jenkins的系统管理系统配置

    1. 配置系统管理员邮件地址,注意,这里的邮件地址和你后续配置使用的邮件地址保持一致,不然报错(我个人在配置163邮箱时发现的该问题)。

    1. 下拉选择邮件通知,首先点击高级得到完整的配置输入框。

    接下来就是填写具体的配置了。

    腾讯版#

    注意这里的邮箱地址与系统管理员邮件地址保持一致。


    Extended E-mail Notification

    网易版#

    注意这里的邮箱地址与系统管理员邮件地址保持一致。

    上述步骤配置完毕后,就可以在项目的构建后步骤中使用该功能了。
    注意,如果测试邮件发送失败,在SMTP端口填写25再尝试

    如果是多个邮箱地址,以空格分割即可。

    自定义邮件配置#

    之前搞的基础邮箱配置肯定不符合你的身份,我们接下来研究一下配置邮件扩展功能。
    首先在插件管理中心确保Email Extension Plugin插件已安装。

    扩展邮件功能有两种方式:

    1. 自定义邮件模板
    2. 使用Jenkins内置模板

    开搞!

    自定义邮件模板#

    先把HTML模板搁这(我也是从别处搞过来的,有问题概不负责),你搞搞就知道各个参数是啥意思了:

    <!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>
            <td>
                <h2>
                    <b>来自Jenkins的邮件通知</b>
                </h2>
            </td>
        </tr>
        <tr>
            <td>
                <br/>
                <b style="color:#0B610B;">构建信息:</b>
                <hr size="2" width="100%" align="center"/>
            </td>
        </tr>
        <tr>
            <td>
                <ul>
                    <li>项目名称&nbsp;:&nbsp;${PROJECT_NAME}</li>
                    <li>触发原因&nbsp;:${CAUSE}</li>
                    <li>构建日志&nbsp;:&nbsp;<a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
                    <li>单元测试报告&nbsp;:<a href="${BUILD_URL}allure/">${BUILD_URL}allureReport/</a></li>
                    <li>工作目录&nbsp;:&nbsp;<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
                    <li>测试报告下载&nbsp;:&nbsp;<a href="${PROJECT_URL}">${PROJECT_URL}lastSuccessfulBuild/artifact/allure-report.zip</a></li>
                </ul>
            </td>
        </tr>
        <tr>
            <td><b style="color:#0B610B;">构建日志:</b>
                <hr size="2" width="100%" align="center"/>
            </td>
        </tr>
        <tr>
            <td><textarea cols="80" rows="30" readonly="readonly"
                          style="font-family: Courier New; 500px;max- 1000px;">${BUILD_LOG}</textarea>
            </td>
        </tr>
    </table>
    </body>
    </html>
    

    来看配置吧!
    这里以163邮箱为例,首先,在manage jenkins系统配置中操作。

    1. 确认系统管理员邮件地址

    1. 下拉选择Extended E-mail Notification选项:

    图里差不过已经说明白了~

    1. 现在在你的job中的配置中,构建后的操作中添加Editable Email Notification:

    1. Editable Email Notification具体配置:

    基本设置:

    高级设置:

    添加触发器:

    配置always触发器:

    1. 构建job后,就可以收到邮件了:

    完整的发送示例参考:https://www.cnblogs.com/Neeo/articles/12728284.html

    使用Jenkins内置模板#

    问题#

    com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user#

    告诉你用的邮箱必须是认证的!
    我在配置163邮箱的时候,发现的该问题,可能的原因是,系统管理员邮件地址和你用的第三方服务器的邮件地址不一致;解决办法就是搞一致呗。

    javax.mail.AuthenticationFailedException: 535 Login fail. Authorization code is expired#

    提示的是你用的授权码已过期;解决办法不用说了,重新申请一个授权码。

    邮件发送失败#

    我在使用qq邮箱那一套配置了高级邮箱配置,在任务中,却一直无法发送邮件,后来发现是端口问题,默认25端口,我没有删除,结果有了问题。
    但这里要记录的是排查过程,我是如何发现是端口问题的?就是在系统中配置邮箱相关参数时,勾选了开启debug模式:

    然后在报错中查到了connect timeout的错误,然后就把端口删了,后来就能发送成功了。

  • 相关阅读:
    windows下安装,配置gcc编译器
    【Oracle】-【ROWNUM与索引】-索引对ROWNUM检索的影响
    古代文化与典故
    古代文化与典故
    Opencv+Zbar二维码识别(一维码校正)
    美国历史与文化
    美国历史与文化
    地道的英文 —— 固定搭配、固定短语
    地道的英文 —— 固定搭配、固定短语
    英式英语 vs 美式英语
  • 原文地址:https://www.cnblogs.com/ZhiXiaoBbai/p/15503412.html
Copyright © 2011-2022 走看看