Jenkins奇技淫巧 — 發(fā)送郵件篇

\color{blue}{Jenkins系列文章還在更新和完善中,有什么疑問歡迎留言}

\color{blue}{目錄}

Jenkins奇技淫巧 — 安裝篇(mac)
Jenkins奇技淫巧 — 配置篇
Jenkins奇技淫巧 — 安全篇
Jenkins奇技淫巧 — 發(fā)送郵件篇
Jenkins奇技淫巧 — 全局變量篇
Jenkins奇技淫巧 — 新建任務篇
Jenkins奇技淫巧 — 插件篇
Jenkins奇技淫巧 — 問題篇
Jenkins奇技淫巧 — 命令篇
Jenkins奇技淫巧 — 環(huán)境配置篇(Android自動化構建)
Jenkins奇技淫巧 — 參數(shù)化構建篇(Android自動化構建)
Jenkins奇技淫巧 — 第一次實戰(zhàn)篇(Android自動化構建)
Jenkins奇技淫巧 — Python打包篇(Android自動化構建)

Jenkins奇技淫巧 — Python發(fā)送郵件和上傳蒲公英(Android自動化構建)

Jenkins奇技淫巧 — 樂固,多渠道打包篇(Android自動化構建)
Jenkins奇技淫巧 — 節(jié)點管理篇
Jenkins奇技淫巧 — 優(yōu)秀文章篇


簡介

Jenkins默認提供了一個郵件通知,能在構建失敗、構建不穩(wěn)定等狀態(tài)后發(fā)送郵件給開發(fā)人員。由于它本身有很多局限性,比如它的郵件通知無法提供詳細的郵件內(nèi)容、無法定義發(fā)送郵件的格式、無法定義靈活的郵件接收配置等等。在這樣的情況下,我們找到了Jenkins Email Extension Plugin。該插件能允許你自定義郵件通知的方方面面,比如在發(fā)送郵件時你可以自定義發(fā)送給誰,發(fā)送具體什么內(nèi)容等等。

配置

全局配置(系統(tǒng)管理 -> 系統(tǒng)設置)

Jenkins簡單的郵件配置界面:


屏幕快照 2019-04-18 下午10.36.08.png
  • SMTP server
    郵箱的服務器地址,在登陸自己的郵箱后,在郵箱相關配置頁面可以找到,當然也可以百度,比如我用的163郵箱,那么SMTP server就是smtp.163.com

  • Default user E-mail suffix
    郵箱的后綴,163的就是@163.com
    網(wǎng)頁版163查看的地方:設置 -> 帳號和郵箱中心 -> POP3/SMTP/IMAP

  • Use SMTP Authentication
    點開“高級”會出現(xiàn)該配置,郵箱認證,即登陸用戶名和密碼
    這里我拿163郵箱舉例說明,因為163可以設置客戶端授權密碼,用戶名是自己郵箱的用戶名,密碼是客戶端授權密碼,我試過直接用郵箱名和密碼是不能發(fā)送郵件的,其它郵件,我不清楚,大家可以試一試,如果其它郵件也有客戶端授權密碼,那還是用客戶端授權密碼,畢竟這樣也比較安全。

    下面說一下163的客戶端授權密碼的設置地方。

     1. 網(wǎng)頁上登陸163郵箱。
     2. 網(wǎng)頁版163設置的地方:設置 -> 帳號和郵箱中心 -> 客戶端授權密碼
     3. 開啟客戶端授權密碼,設置密碼
    
  • SMTP端口
    填寫465,至于可以用哪些,自行百度,如果這里填寫了端口號,而沒有勾選“使用SSL協(xié)議”,郵件也是發(fā)不出的。SMTP端口 設置成25,親測mac上發(fā)不出郵件,如果你在阿里云服務器上搭建Jenkins,使用25也是發(fā)不出郵件的,原因:

    阿里云發(fā)送SMTP郵件失敗   阿里云服務器不能發(fā)郵件解決方法 ,第三種方法是可以不用25端口,配置465端口阿里云發(fā)送郵件是成功的,現(xiàn)在阿里云25
    口管理的很嚴要申請通過難度太大,我申請成功過,也申請失敗過,最近后面申請的都失敗了,我后面就直接用第三種方法配置465端口就可以用
    

    參考:https://www.cnblogs.com/axinno1/p/8303130.html

  • 通過發(fā)送測試郵件測試配置

    1. Test e-mail recipient: 收件人郵箱地址
    2. 點擊Test configuration
    3. 發(fā)送成功提示:Email was successfully sent
\color{red}{注意}

可能很多人配置好這里后,點擊Test configuration始終不能發(fā)送郵件出去,檢查過去檢查過了,發(fā)現(xiàn)沒什么問題,這里很多人可能會漏掉一個郵件是否配置好。

首先發(fā)郵件,必須有一個發(fā)郵件的帳號,那么誰去發(fā)呢,當然是系統(tǒng)管理員使用某個郵件地址去發(fā)送郵件,那么哪里去配置管理員使用的郵件地址呢。你可能會說,不是郵件通知里面已經(jīng)配置了郵件地址和密碼了嗎?其實這里配置了,還是不行的,那需要在哪里配置呢?還是在當前的設置頁面,有這樣一個地方:

  • Jenkins URL
    如果是在遠程服務器,需要把域名改成遠程服務器的地址

  • 系統(tǒng)管理員郵件地址
    這里的郵件地址要和下面設置的地址一致


    屏幕快照 2019-04-18 下午10.45.52.png
  • Extended E-mail Notification
    上面的郵件通知,只能簡單的發(fā)郵件,不能進行郵件內(nèi)容的定制,那么Extended E-mail Notification正好解決了這個問題

    1. 認證設置和上面的郵件配置一樣
    2. Default Content:郵件發(fā)送的默認內(nèi)容
    3. 其它的自行查看,可以參考下面文章:
      https://www.cnblogs.com/zz0412/p/jenkins_jj_01.html
項目配置(系統(tǒng)管理 -> 系統(tǒng)設置)

要想在一個項目中使用email-ext插件,你首先得在項目配置頁激活它。“在構建后操作”——”Add Post-build Actions”選項中勾選“Editable Email Notification”標簽。

  • 項目基本配置
    當插件激活后你就能編輯如下字段(只列出常用的字段):

    1. Project Recipient List:這是一個以逗號(或者空格)分隔的收件人郵件的郵箱地址列表。允許您為每封郵件指定單獨的列表。Ps:如果你想在默認收件人的基礎上添加收件人:$DEFAULT_RECIPIENTS,<新的收件人>
    2. Default Subject:允許你配置此項目郵件的主題。
    3. Default Content:跟Default Subject的作用一樣,但是是替換郵件內(nèi)容。
    4. Attach Build Log:加上構建日志。
    5. Compress Build Log before sending:發(fā)送前壓縮日志(zip格式)。

參考:https://www.cnblogs.com/zz0412/p/jenkins_jj_01.html

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容