java 发送邮件_Jenkins实现自动化邮件发送踩坑记录
文章簡介
本文分享Jenkins實(shí)現(xiàn)郵件發(fā)送,安裝Jenkins可參考jenkins安裝。寫這篇文章,是在實(shí)際使用Jenkins過程中遇到這樣一個(gè)問題,當(dāng)每次Jenkins構(gòu)建成功或者失敗后,需要個(gè)人登錄Jenkins查看構(gòu)建結(jié)果,同時(shí)在構(gòu)建前做了數(shù)據(jù)備份,也需要手動(dòng)的拷貝一份備份文件到本地。為了解決這個(gè)問題,便想到了Jenkins的郵件功能。在個(gè)人實(shí)踐中,在每次master分支自動(dòng)構(gòu)建前,需要將數(shù)據(jù)庫和代碼打包、備份,在Jenkins構(gòu)建結(jié)束之后,將備份的文件發(fā)送給對應(yīng)的負(fù)責(zé)人。
文章部分細(xì)節(jié)的地方可能省略待過,因此需要對Jenkins有一定使用的用戶比較合適,如果不熟悉的,可以參考上面提交的文章。文章涉及到不準(zhǔn)確的信息還望反饋。大致邏輯
接下來整個(gè)流程,也都按照該流程進(jìn)行演示如何配置。
安裝插件
首先點(diǎn)擊管理,然后點(diǎn)擊插件管理,跳轉(zhuǎn)到插件中心。
如果沒有安裝過email對應(yīng)的插件,點(diǎn)擊可選插件按鈕,然后輸入email關(guān)鍵詞,進(jìn)行搜索即可。這里我已經(jīng)安裝過了,為了演示選擇已安裝菜單。
在安裝插件的過程中,需要注意一個(gè)版本號(hào)。2.73版本的插件有一個(gè)bug,就是配置正確卻不能發(fā)送郵件。建議避開這個(gè)版本號(hào)。系統(tǒng)配置
安裝好插件之后,接下來就需要進(jìn)入系統(tǒng)配置。進(jìn)入系統(tǒng)配置,主要配置兩個(gè)地方,一個(gè)是管理員的郵箱地址,一個(gè)是插件的配置信息。
記住插件發(fā)送郵件的賬號(hào)一定的和管理員的郵箱賬號(hào)一致,否者會(huì)出現(xiàn)下面錯(cuò)誤信息。錯(cuò)誤信息:
com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1587) Caused: com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user;nested exception is:com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized userat com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:2057)at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1580)at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1097)at javax.mail.Transport.send0(Transport.java:195)at javax.mail.Transport.send(Transport.java:124)at hudson.tasks.Mailer$DescriptorImpl.doSendTestMail(Mailer.java:581)at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)錯(cuò)誤信息的大致意思就是說,郵箱的授權(quán)用戶(插件配置的賬號(hào))和from(郵件發(fā)送者)賬號(hào)不一致。
這里其實(shí)有點(diǎn)小困惑,郵件配置授權(quán)賬戶,為什么管理員的郵件賬號(hào)還必須保持一致。按理來說,既然配置了授權(quán)用戶,就采用配置的授權(quán)郵箱進(jìn)行發(fā)送唄。可能是系統(tǒng)使用的管理員郵件發(fā)送。這里的配置授權(quán)僅僅是為了授權(quán)第三方郵箱賬戶吧。項(xiàng)目配置
接下來,我們創(chuàng)建一個(gè)任務(wù)測試發(fā)送郵件。至于具體的配置這里省略待過,直接記錄配置郵件的地方。
這里面就是針對該項(xiàng)目的具體配置信息,上面我們提交到系統(tǒng)配置,屬于全局配置。如果這里沒有配置,則默認(rèn)走全局配置。大致的配置信息和全局配置都是相同的作用,可以根據(jù)不同的任務(wù),自行配置即可。
郵件測試
最后配置完畢,當(dāng)提交代碼待倉庫后,使用webhooks自動(dòng)觸發(fā)構(gòu)建,登錄郵箱就可以查看到下面的一些構(gòu)建基礎(chǔ)信息了。如果郵件需要更多的配置信息,直接到任務(wù)中去配置即可。
?
總結(jié)
以上是生活随笔為你收集整理的java 发送邮件_Jenkins实现自动化邮件发送踩坑记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring-security登录和权限
- 下一篇: python3 django开发_pyt