Jenkins自動傳送郵件配置及定時構建
前言
在配置之前,我們需要安裝好Jenkins,對於如何安裝不在贅述,看我之前一篇安裝教程(或者找度娘,教程很多)。接下來我們開始詳細講解build執行完成後自動傳送郵件和定時自動構建build
系統配置
安裝外掛
我們在安裝Jenkins的時候可以選擇安裝,也可以在安裝之後選擇安裝需要的外掛
1.點選Jenkins面板[Manage Jenkins]
2.管理Jenkins頁面選擇[Manage Plugins]外掛管理
3.切換視窗到可選外掛,右上角搜尋外掛Email Extension Template Plugin
4.安裝後需要重新啟動Jenkins(安裝的時候有重啟的選項,勾選上就可以了,安裝完會自動重啟),我這邊已經安裝好了
系統配置
同樣,在管理Jenkins頁面,點選[Configure Sysyem]系統配置
1.配置Jenkins Location
這裡沒啥可說的Url就是自己電腦的ip地址,後面跟Jenkins的預設埠
2.配置Extended E-mail Notification
欄位說明:預設收件人可以是多個,多個接受者使用逗號分隔
正文程式碼
<!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>
3.配置Jenkins自帶的郵件功能
我們再次點選Advanced Settings 修改一下預設接受者(這裡我們最好把預設的接受者都刪除,然後自己重新新增,防止接收失敗)
注意:不要勾選使用SSL協議,否則無法傳送郵件;SMTP的埠和前面設定外掛的埠一樣,哪個有效就使用哪個(25和465)
4.配置觸發器Trigger
頁面就這樣一個按鈕,找不到的時候仔細找肯定有,就在一個角落
ok,所有的配置都已經完成了,接下來我們先測試一下是否成功,再使用。
嗯,已經成功了,別忘記儲存,接下來我們構建一個專案測試一下發送的郵件
構建專案
1.新建Job
Jenkins面板選擇[新建item]
2.命名Job名稱並選擇構建一個自由風格的專案
3.輸入專案描述
4.原始碼管理
這裡我們不適用任何的庫直接選擇None
5.構建觸發器
我這裡設定的是每5分鐘構建一次實現定時自動構建
6.構建命令
我這裡直接選擇執行cmd命令
7.構建後操作
選擇構建後傳送郵件
說明:
我這裡傳送郵件時,帶上了附件,那麼附件是從report目錄下的所有以.html格式的檔案壓縮成
Attach Build Log 這個選擇可以根據自己情況選擇,我選擇的是傳送郵件的附件會包含專案構建的日誌
ok,以上設定完成之後儲存即可
新增專案
我們找到Jenkins安裝目錄下的workspace目錄,在此目錄下我們會發現和我們之前新建專案時填寫的名字一樣的一個目錄,沒錯了,這個目錄就是Jenkins構建時的工作專案目錄
注意: 如果worksapce下面你沒找到你的專案名目錄,你需要手動執行一次構建點選Build Now即可
手動構建之後就會自動生成我們Job名稱命名的目錄了
接下來我們複製我們的程式碼到這個目錄中
結果展示
以上所有的工作完成之後我們可以選擇手動構建,測試一下是否能夠接受到郵件和郵件內容是否正確
控制檯輸出(部分內容)
等待構建完成,檢視一下控制檯日誌和郵箱是否接受到正確的郵件
控制檯日誌
郵箱
正文
附件優化
這裡附件有點多,我們只需要傳送新的報告檔案即可。我們再改一下構建時的命令
ok,儲存,我們再次手動構建,或者直接等待時間到後自動構建,再次檢視郵箱附件是否只有新生成的報告
可以看到我們的附件只有最新的報告和build日誌了,開心吧! 趕緊試試吧
總結
本章主要講解Jenkins配置自動傳送郵件,配置自由風格的專案及定時構建。主要使用第三方報告外掛,且要學會定時構建時的語法,好了,又多了個裝逼的技能,趕緊跟著我試一