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;width: 500px;max-width: 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的錯誤,然后就把端口刪了,后來就能發送成功了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM