在Jenkins的使用中郵件提醒是一個經常使用功能,Jenkins默認安裝了Mailer Plugin插件用於實現此功能.java
首先在Jenkins的「系統管理」->「系統設置」中設置「系統管理員郵件地址」,如:root@qq.com;「系統管理員郵件地址」要和下面「郵件通知」中使用相同的後綴名和用戶名,不然會報異常服務器
QQ郵箱服務併發
第一步測試
登陸QQ郵箱,在「賬戶」裏開啓「POP3/SMTP」並獲取受權碼,受權碼的說明見http://service.mail.qq.com/cgi-bin/help?subtype=1&&no=1001256&&id=28。插件
第二步code
在Jenkins的「系統管理」->「系統設置」中的「郵件通知」中設置郵件服務器相關的參數,以下圖:blog
注意:ip
「用戶名」要和「系統管理員郵件地址」中的保持一致,不然會在「經過發送測試郵件配置」進行測試時會報異常:com.sun.mail.smtp.SMTPSendFailedException: 501 mail from address must be same as authorization user
ci
「密碼」填寫第一步中獲取的受權碼,不然會報異常:javax.mail.AuthenticationFailedException: 535 Error
io
Job中要使用發郵件功能,須要在「構建後操做」中選擇「郵件通知(Mail Notifcation)」,設置「接收人(Recipients)」,多個接收人時用英文空格分隔。
「Mailer Plugin」有以下兩個可選項:
每次不穩定的構建都發送郵件通知
此選項默認是選中的,當Job運行失敗或不穩定時發郵件給「接收人」中指定的人
單獨發送郵件給對構建形成不良影響的責任人
此選項選中時會向致使構建失敗的代碼提交人的郵件中發送郵件,郵箱後綴名是在「郵件通知」是在「用戶郵箱默認後綴」中設置的,若是這樣的郵箱不存在將會發送失敗致使Job失敗。我猜想Mailer Plugin會從scm的提交記錄中獲取提交人名稱,而後和「用戶郵箱默認後綴」拼在一塊兒組成郵箱併發送郵件。