Jenkins發送郵箱配置,需要的插件:Extended E-mail Notification,郵件通知
1、Manage Jenkins -> Configure System
2、下圖是“郵件通知”的高級配置,開始只配置了這里,沒有配置Extended E-mail Notification里高級配置,導致構建成功后報:Error sending to the following VALID addresses,第三步是解決這個問題
3、由於發送郵件用的插件是:Extended E-mail Notification,所以一定要配置在這里配置SMTP的端口號,及發件人賬號和客戶端授權密碼
Extended E-mail Notification-高級配置
4、去工程里配置郵件內容
因為我在工程里用的是Editable Email Notifaction,所以在系統配置里一定要用Extended E-mail Notification插件里的高級配置才能發下來郵件
jenkins發送郵箱配置,出現Error sending to the following VALID addresses,解決方案的更多相關文章
- Jenkins 郵件配置 || Jenkins 發送郵件失敗,提示:Error sending to the following VALID addresses
jenkins---系統管理---系統設置 在Jenkins URL下填寫URL鏈接 在系統管理員郵件地址下填寫發件郵箱,這將是以后發送郵件通知的發件人 如果下載了外部郵件通知 配置一下SMTP se ...
- Jenkins簡介&郵箱配置
一.Jenkins基本介紹: Jenkins是一個開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重復的工作,旨在提供一個開放易用的軟件平台,使軟件的持續集成變成可能.--摘自百科 二 ...
- Jenkins郵件配置,實現郵件發送策略(可實現每個Job對應不同的發送郵箱)
前言: 首先,要有一個用來發送的郵箱,首選網易!參考:http://www.cnblogs.com/EasonJim/p/6051636.html,這里我注冊了網易的免費企業郵箱. 並且我新建沒多個郵 ...
- window下jenkins+allure+郵箱發送
一.安裝allure 1)下載 allure.zip 下載地址:allure-github: https://github.com/allure-framework/allure2 2)解壓到本地目錄 ...
- Jenkins操作學習 --郵箱配置及測試結果構建
前言 使用jenkins做持續集成工具,構建的整個過程中,肯定要對結果進行記錄和跟蹤,這里我們以qq郵箱為例,來講解如何配置jenkins的郵箱及發送構建結果 一.明確郵箱服務器相關信息 這里我們,要 ...
- django配置發送郵箱
該郵箱配置后台發送郵箱驗證使用 settings內配置 # 服務器地址 EMAIL_HOST = 'smtp.163.com' # 端口,郵箱默認動態端口 25 EMAIL_PORT = 25 # 郵 ...
- Jenkins 系統管理與配置
1. Jenkins 安裝插件的兩種方式 2. 添加憑據(Credentials) 3. 系統管理--全局工具配置 4. 系統管理--系統設置 5. 常用插件說明 Extended E-mail No ...
- tornado web高級開發項目之抽屜官網的頁面登陸驗證、form驗證、點贊、評論、文章分頁處理、發送郵箱驗證碼、登陸驗證碼、注冊、發布文章、上傳圖片
本博文將一步步帶領你實現抽屜官網的各種功能:包括登陸.注冊.發送郵箱驗證碼.登陸驗證碼.頁面登陸驗證.發布文章.上傳圖片.form驗證.點贊.評論.文章分頁處理以及基於tornado的后端和ajax的 ...
- Jenkins 之郵件配置
Jenkins 之郵件配置其實還是有些麻煩的,坑比較多,一不小心就...我是走了很多彎路的. 這里記錄下來,希望大家以后不要重蹈覆轍: 我測試過,這里的 Extended E-mail Notific ...
出處:https://www.shuzhiduo.com/A/QW5YglDBzm/
=======================================================================================
Jenkins 郵件配置,發送失敗,提示:Error sending to the following VALID addresses
jenkins---系統管理---系統設置
在Jenkins URL下填寫URL鏈接
在系統管理員郵件地址下填寫發件郵箱,這將是以后發送郵件通知的發件人
如果下載了外部郵件通知
配置一下SMTP server
Default user E-mail suffiix
Default Content Type
郵件通知屬性下配置
SMTP服務器
后綴等
點擊高級可以進行測試,一般測試OK, 那郵箱服務器的配置就沒有問題
除去在系統配置中,在各個具體的項目下也進行配置
比如何時收到郵件,是在success的狀態下收到,還是失敗的狀態下收到
收件人列表,該項目涉及的人
郵件模板
郵件標題模板:
【構建通知】$PROJECT_NAME - Build #$BUILD_NUMBER - $BUILD_STATUS!
郵件內容模板:
<!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> <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>項目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li> <li>工作目錄: <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li> <li>構建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li> <li>構建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li> </ul> <div> <h4><font color="#0B610B">測試結果</font></h4> <hr size="2" width="100%" /> <div> 本次測試共執行<b>${TEST_COUNTS}</b>個用例, 成功<b style="color: green">${TEST_COUNTS,var="pass"}</b>個, 失敗<b style="color: red">${TEST_COUNTS,var="fail"}</b>個, 跳過<b style="color: #FFEB3B">${TEST_COUNTS,var="skip"}</b>個。 </div> </div> <h4><font color="#0B610B">失敗用例</font></h4> <hr size="2" width="100%" /> <!--<pre class="Jack_Meng" style="font-weight: normal">${FAILED_TESTS,showMessage="false",showStack="false"}</pre>--> <pre>${FAILED_TESTS}</pre> <h4><font color="#0B610B">獲取最近SVN源碼庫提交號(#$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>
這個模板,每個項目可以根據項目自身的需求修改模板。
以上是Jenkins總的配置,接下來各個項目,比如郵件要發送的人,要在什么情況下進行發送等,是在具體的項目下進行配置
第一個構建設置: 一般是在不穩定的時候,或者構建失敗的時候,給某人發送郵件
第二個構建后操作:選擇其中的編輯郵件通知。然后設置項目接受列表,回復啊,郵件內容等,注意這些都是在全局配置基礎上的,全局的配置依然有效
問題1:Jenkins發送郵件失敗,提示:Error sending to the following VALID addresses
https://testerhome.com/topics/14611 所列的解決方案,於我無效,同樣遇到上述問題
在我這邊,不能不填寫具體的project from,也不能填寫錯誤,可能是因為QQ郵箱的緣故,必須填寫QQ郵箱中綁定的發件箱的郵箱地址之后就成功了
Jenkins 郵件配置 || Jenkins 發送郵件失敗,提示:Error sending to the following VALID addresses的更多相關文章
- jenkins發送郵箱配置,出現Error sending to the following VALID addresses,解決方案
Jenkins發送郵箱配置,需要的插件:Extended E-mail Notification,郵件通知 1.Manage Jenkins -> Configure System 2.下圖是“ ...
- jenkins郵件配置----jenkins筆記(三)
轉載地址:https://www.cnblogs.com/sylvia-liu/p/4527390.html 前言 最近搭建Maven+Testng+jenkins的持續集成環境,希望最后實現自動郵件 ...
- Jenkins學習四:Jenkins 郵件配置
本文主要對Windows環境 jenkins 的郵件通知進行介紹 jenkins 內置的郵件功能 使用email-ext插件擴展的郵件功能 郵件通知功能主要包含兩個部分:全局配置和項目配置. 一. 先 ...
- jenkins 郵件配置一
jenkins默認的郵件通知 我先講解下,默認的. jenkins默認就有一個郵件通知,只是太簡單的,不能個性化或者說定制化. 設置系統管理員郵件地址 郵件通知 ①SMTP服務器:如果你使用的是公司郵 ...
- jenkins 郵件配置 二 ***
Jenkins 有兩種郵件通知方式: 1.Jenkins自帶的“E-mail Notification” 2.插件:Extended E-mail Notification,是可編輯的郵件配置方式. ...
- jenkins 郵件配置步驟
一.進行系統管理中的郵件配置步驟: 1.設置Extended E-mail Notification 二.對構建的job 添加郵件發送的步驟: 3.成功截圖:
- jenkins郵件配置以及郵件添加附件詳解
1.在系統管理-系統設置 中找到郵件配置模塊 填寫情況如下圖 第一步,填寫系統管理員郵箱 第二步,填寫郵箱配置 第三步,然后在項目中添加郵箱配置 項目中郵件設置中關於附件添加 因為我的項目目錄中分3 ...
- s3cmd在配置后使用時提示ERROR: S3 error: 403 (InvalidAccessKeyId): The AWS Access Key Id you provided does not exist in our records.
自己新建的ceph環境,下載了s3cmd來做客戶端,使用了s3cmd --configure配置后,在使用s3cmd ls可以查看到所有的bucket,但s3cmd ls s3://xxx 具體buc ...
- Jenkins郵件配置,實現郵件發送策略(可實現每個Job對應不同的發送郵箱)
前言: 首先,要有一個用來發送的郵箱,首選網易!參考:http://www.cnblogs.com/EasonJim/p/6051636.html,這里我注冊了網易的免費企業郵箱. 並且我新建沒多個郵 ...
出處: https://www.bbsmax.com/A/mo5k09Kvdw/
=======================================================================================
jenkins郵件模板配置
一、安裝 Email Extension 插件
系統管理->插件管理,這里安裝插件“Email Extension”用於設置郵件模板。
二、配置系統默認郵件參數
(一)內置的Jenkins 郵件服務器配置
1.系統管理-系統設置,先設置發件人的郵件,切記:一定要設置,且在系統管理員那個地方設置的email地址要和email配置的相同。
2. 系統管理-系統設置,再設置全局設置
使用gmail時,拋出javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not acceptedhttps
//www.google.com/settings/security/lesssecureapps
將“允許安全性較低的應用程序:關閉”改為“允許安全性較低的應用程序:開啟”
設置完成后,可以勾選 “通過發送測試郵件配置” 測試此配置能否連通。
(二)Extended E-mail Notification 設置
詳細參數說明如下:
Override Global Settings:如果不選,該插件將使用默認的E-mail Notification通知選項。反之,可以通過指定不同於的設置來進行覆蓋。
Default Content Type:指定構建后發送郵件內容的類型,有Text和HTML兩種。
Use List-ID Email Header:為所有的郵件設置一個List-ID的郵件信頭。
Add 'Precedence: bulk' Email Header:設置優先級。
Default Recipients:自定義默認電子郵件收件人列表。
Reply To List:回復列表。
Emergency reroute:如果這個字段不為空,所有的電子郵件將被單獨發送到該地址(或地址列表)。
Excluded Committers:防止郵件被郵件系統認為是垃圾郵件,郵件列表應該沒有擴展的賬戶名(如:@domain.com),並且使用逗號分隔。
Default Subject:自定義郵件通知的默認主題名稱。該選項能在郵件的主題字段中替換一些參數,這樣就可以在構建中包含指定的輸出信息。
Maximum Attachment Size:郵件最大附件大小。
Default Content:自定義郵件通知的默認內容主體。該選項能在郵件的內容中替換一些參數,這樣就可以在構建中包含指定的輸出信息。
Default Pre-send Script:默認發送前執行的腳本。
Enable Debug Mode:啟用插件的調試模式。
nable Security:啟用時,會禁用發送腳本的能力,直接進入Jenkins實例。如果用戶試圖訪問Jenkins管理對象實例,將拋出一個安全異常。
Content Token Reference:郵件中可以使用的變量,所有的變量都是可選的。
三、配置郵件模板
- 安裝插件:
Config File Provider:提供文件的存儲插件。
Pipeline Utility Steps:提供文件的讀寫的插件。
- 添加模板文件
系統管理->Managed files->Add a new Config,選擇“Extended Email Publisher Groovy Template”類型,然后添加郵件模板。
<!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>各位同事,大家好,以下為${PROJECT_NAME }項目構建信息</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>
</td>
</tr>
<tr>
<td><b><font color="#0B610B">歷史變更記錄:</font></b>
<hr size="2" width="100%" align="center" /></td>
</tr>
<tr>
<td>
${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:<br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat=" %p"}
</td>
</tr>
</table>
</body>
</html>
四、Jenkinsfile中添加script
stage('email'){
echo "測試發送郵件"
// 設置生成模板文件
configFileProvider([configFile(fileId: '6615581f-719a-4edc-9f3a-161438441471',
targetLocation: 'email.html',
variable: 'failt_email_template')]) {
// 讀取模板
template = readFile encoding: 'UTF-8', file: "${failt_email_template}"
// 發送郵件
emailext(subject: '任務執行失敗',
attachLog: true,
recipientProviders: [requestor()],
to: 'yuhuan.shi@kikatech.com',
body: """${template}""")
}
}
}
body: 郵件內容
subject: 郵件主題
to: 指定郵件接收者
attachLog: 附加構建日志信息到附件中
recipientProviders: 設置郵件接收者,可以設置向任務請求觸發人員、項目組、整個團體等發生郵件,這樣既可以發生郵件到 to 中的設置人員,也可以發生給對應觸發人員。
=======================================================================================
Jenkins 郵件發送「可修改模版」
這是我參與2022首次更文挑戰的第1天,活動詳情查看:2022首次更文挑戰
上一篇,Jenkins Pipeline 結合 Gitlab 實現 Node 項目自動構建 我們已經實現了自動構建的功能。
在團隊合作中,項目在構建異常「或成功」時候,需要郵件通知相關的人員,這就涉及到 Jenkins
郵件發送的功能了。
安裝 Email Extension
Email Extension 插件允許你配置郵件通知。通過此插件,你可以自定義郵件的發送人,接受者和發送的內容。
Manage Jenkins -> Manage Plugins -> Available 。搜索 Email Extension 安裝
配置 Email Extension 參數
Manage Jenkins -> Configure System -> Extended E-mail Notification
第 1 點: Simple Mail Transfer Protocol (SMTP) 自己申請,如果不知道如何操作,請網上找答案。(應該也許不難吧...)
第 2 點: 郵件默認的接收郵件地址。
構建腳本
使用Jenkins Pipeline 結合 Gitlab 實現 Node 項目自動構建的Jenkinsfile
腳本補充下。
pipeline {
agent any
tools {
nodejs "nodejs"
}
stages {
stage('Dependency') {
steps {
sh 'npm install'
}
}
stage('Build') {
steps {
sh 'npm run clean'
sh 'npm run build'
}
}
}
// 添加的腳本內容
post {
always {
emailext body: '${DEFAULT_CONTENT}',
subject: '${DEFAULT_SUBJECT}',
to: '${DEFAULT_RECIPIENTS}',
from: '${env.DEFAULT_FROM_EMAIL}'
}
}
}
復制代碼
這就很明顯了:默認發送郵箱
,默認接收郵箱
,默認的發送主題
,默認的發送內容
。都是獲取我們上一步設定的值。效果如下:
構建失敗:
構建成功:
對比上面的兩張圖,構建失敗和構建成功
,的構建結果字體竟然是不同的顏色,神奇...
如果你看上一節配置 Email Extension 參數
中的截圖,你可能會留意到:
<h2><font color="${BUILD_STATUS}">構建結果 - ${BUILD_STATUS}</font></h2>
復制代碼
color="${BUILD_STATUS}"
嗯,加上這個,不同狀態返回的構建結果字體不同顏色了?我們帶動下構建pipeline
的always -> changed
。觸發構建信息由失敗 -> 成功
,得到下面的結果:
看來是想多了啊,並不是不同的狀態不同顏色啊。不過,如果你不介意這個bug
,可以使用...
升級下需求
發送郵件需要根據不同狀態,使用特定的顏色區分。比如:成功 -> #27AE60 , 失敗 -> #E74C3C , 其他顏色 -> #F4E242
咦,這還不簡單?在默認的發送模版上添加判斷條件就行了。
然而,不支持,太慘了,得另辟蹊徑~(大霧)
經過一番搜索,Groovy Template 能夠解決這個問題。
我們更改下 pipeline
腳本:
# ...
post {
always {
emailext body: '''${SCRIPT, template="my-email-template"}''',
subject: '${DEFAULT_SUBJECT}',
to: '${DEFAULT_RECIPIENTS}',
from: "${env.DEFAULT_FROM_EMAIL}"
}
}
# ...
復制代碼
我們構建下。構建是成功了,但是郵箱收到的卻是:
Groovy Template file [my-email-template] was not found in $JENKINS_HOME/email-templates.
復制代碼
郵件提示,機器中 $JENKINS_HOME/email-templates
下並不存在 my-email-template
模版。(笑哭)
沒有權限怎么辦呢?咱可以通過其他方法不?
再查找資料,咦,有了 - Email Extension Plugin is not loading groovy template added via Config File Provider Plugin。通過配置文件解決,我們來見證下:
步驟 1 : 到 jenkins
平台上操作,Manage Jenkins -> Managed Files
步驟 2 : 點擊 Add a new Config
步驟 3 : 點選類型 Extended Email Publisher Groovy Template
, 點擊 Submit
按鈕提交
步驟 4 : 輸入名稱和相關的內容。請記住名稱,后續使用到。
因為截圖篇幅問題,這里的 Content
內容並沒有截取完整,完整的內容請戳Groovy_template.html,其中的關鍵代碼如下:
.tr-title {
background-color: <%= (build.result == null || build.result.toString() == 'SUCCESS') ? '#27AE60' : build.result.toString() == 'FAILURE' ? '#E74C3C' : '#F4E242' %>;
}
復制代碼
Groovy
官方完整模版請見官方模版Groovy Email Template
扎心了啊,老鐵(尬笑)
步驟 5 : 修正你的 pipeline
文件,請確保你輸入和正確的名字"managed:Groovy Email Template"
。
# ...
post {
changed {
emailext body: '''${SCRIPT, template="managed:Groovy Email Template"}''',
subject: '${DEFAULT_SUBJECT}',
to: '${DEFAULT_RECIPIENTS}',
from: "${env.DEFAULT_FROM_EMAIL}"
}
}
# ...
復制代碼
一切就緒,我們重新構建。結果如下:
構建狀態 | 郵箱收到內容截圖 |
---|---|
成功 | ![]() |
失敗 | ![]() |
中止 | ![]() |
嗯~效果不錯(撒花🎉🎉🎉)完結
讀者有啥其他的方法呢,可以留言交流下。更多的內容,請戳Jimmy Github Blog
=======================================================================================
個人情況說明
我自己的問題,上面兩篇文章基本都講解到了。
我的是在Jenkins管理-->系統配置-->Extended E-mail Notification-->高級
重新指定用戶名和密鑰,就可以正常在項目構建的時候發送郵件了
個人使用郵件模板
我自己做項目中使用的是pipeline模式,郵件模板自己根據上面的稍微有一些修改
1)可以支持多種方式發生郵件。
2)郵件模板內容替換,支持命令行獲取svn版本號等。

pipeline { agent any environment { _FOO = "bar" _name="jack" } stages { stage('Hello') { steps { echo 'Hello World' echo "Hello World name=${_name}" echo "======JOB_NAME=${JOB_NAME}" echo "======JENKINS_URL=${JENKINS_URL}" println('======Hello World println'); echo "======STAGE_NAME=${STAGE_NAME}" echo "======env.BRANCH_NAME=${env.BRANCH_NAME}" echo "======currentBuild.result=$currentBuild.result" println '--------------------------------------------' //bat 'set' } post{ always{ echo 'Hello======always post' } success{ echo 'Hello======success post' } failure{ echo 'Hello======failure post' } } } stage("downSVN"){ steps{ checkout([$class: 'SubversionSCM', additionalCredentials: [], excludedCommitMessages: '', excludedRegions: '', excludedRevprop: '', excludedUsers: '', filterChangelog: false, ignoreDirPropChanges: false, includedRegions: '', locations: [[cancelProcessOnExternalsFail: true, credentialsId: '4f639e05-2925-49cc-99ab-5a9c836bf33e', depthOption: 'infinity', ignoreExternalsOption: true, local: '.', remote: 'https://127.0.0.1/svn/TestJava/trunk/JunitTest/maven_custom']], quietOperation: true, workspaceUpdater: [$class: 'UpdateWithRevertUpdater']]) } } stage("buildProject"){ steps{ bat 'mvn clean test' //for /f "delims=" %a in ('svn info --show-item last-changed-revision') do set "var=%a" } } stage("svnInfo"){ steps{ bat 'svn info | find "Revision" >svninfo' } } } post { always { // One or more steps need to be included within each condition's block. echo '======always' post_email_parent() } cleanup { // One or more steps need to be included within each condition's block. echo '======cleanup' } } } def post_email(String stage, String status) { mail to: '12345678@qq.com', subject: "【${PROJECT_NAME}】${stage} ${status}", body: "build_id: ${env.BUILD_NUMBER}\nbranch: ${env.GIT_BRANCH}\nstage: ${stage}\nbuild_url: ${env.BUILD_URL}" } def post_email_parent() { emailext( mimeType: 'text/html', to: 'lusf@cares.sh.cn,yujf@cares.sh.cn,cc:mengqiang@cares.sh.cn,bcc:mq0036@163.com', subject: '【構建通知】$PROJECT_NAME - Build #$BUILD_NUMBER - $BUILD_STATUS!', body: '${DEFAULT_CONTENT}' ) } def post_email_temp() { emailext( mimeType: 'text/html', to: 'lusf@cares.sh.cn,yujf@cares.sh.cn,cc:mengqiang@cares.sh.cn,bcc:mq0036@163.com', subject: '【構建通知】$PROJECT_NAME - Build #$BUILD_NUMBER - $BUILD_STATUS!', body: '${FILE,path="JenkinsScript/emailTemp.txt"}' ) } def post_email() { emailext( mimeType: 'text/html', to: 'lusf@cares.sh.cn,yujf@cares.sh.cn,cc:mengqiang@cares.sh.cn,bcc:mq0036@163.com', subject: '【構建通知】$PROJECT_NAME - Build #$BUILD_NUMBER - $BUILD_STATUS!', body: '''<!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> <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>項目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li> <li>工作目錄: <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li> <li>構建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li> <li>構建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li> </ul> <div> <h4><font color="#0B610B">測試結果</font></h4> <hr size="2" width="100%" /> <div> 本次測試共執行<b>${TEST_COUNTS}</b>個用例, 成功<b style="color: green">${TEST_COUNTS,var="pass"}</b>個, 失敗<b style="color: red">${TEST_COUNTS,var="fail"}</b>個, 跳過<b style="color: #FFEB3B">${TEST_COUNTS,var="skip"}</b>個。 </div> </div> <h4><font color="#0B610B">失敗用例</font></h4> <hr size="2" width="100%" /> <!--<pre style="font-weight: normal">${FAILED_TESTS,showMessage="false",showStack="false"}</pre>--> <pre>${FAILED_TESTS}</pre> <h4><font color="#0B610B">獲取最近SVN源碼庫提交號(#${SVN_REVISION})[#${PROPFILE,file="svninfo",property="Revision"}]</font></h4> <hr size="2" width="100%" /> <!--${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="Build No【#%n】:%c<br />", changesFormat="<div style='padding-left:20px'>%d [%a][%r] %m<br />%p</div>",pathFormat="<div style='padding-left:20px'>%p</div>"}--> <ul>${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="Build No【#%n】:%c<br />", changesFormat="<li>%d [%a][%r] %m</li>"}</ul> 詳細提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/> </td> </tr> <!--<tr> <td> <h4><font color="#0B610B">編譯結果</font></h4> <hr size="2" width="100%" />${JELLY_SCRIPT,template="html"} </td> </tr>--> </table> </body> </html>''' ) }