[英]Jenkins EMail-ext plugin sends groovy code in the Email body
擴展電子郵件通知的“默認內容”設置如下,默認內容類型為“HTML(文本/ html)”:
<html>
<body>
<%
if(build.testResultAction) {
def testResult = build.testResultAction
def testCount = String.format("%.2f",(testResult.totalCount))
def testPassed = String.format("%.2f",())
def testFailed = String.format("%.2f",(testResult.result.failCount))
def testSkipped = String.format("%.2f",())
def buildDuration = String.format("%.2f",(testResult.result.duration ))
}
%>
Hi All,<br><br>
The execution of the Automation suite has been completed and the results are as below.<br><br>
<b><u>Configuration :</u></b><br>
Project Name : $JOB_NAME<br>
Test Server URL : $Test_Server_URL<br>
Group Name : $Group_Name<br><br>
<b><u>Execution Results :</u></b><br>
Status : <font color="blue">$BUILD_STATUS</font><br>
Tests run : $testCount<br>
Failures : $testFailed<br>
Errors : 0<br>
Skipped : 0<br>
Total time : $buildDuration<br>
Finished at: Tue May 06 17:12:19 IST 2014<br>
Build URL : $BUILD_URL<br><br>
The HTML version of the automation results and the log file is attached with this e-mail for your reference.<br><br>
Regards,<br>
Jenkins CI Tool
</body>
</html>
但是報告電子郵件在其正文中具有groovy代碼本身而不是預期值。
查看emai-ext插件的wiki頁面,了解如何使用腳本內容,其中描述的步驟如下:
JENKINS_HOME/email-templates/
${SCRIPT, template="name-of-template"}
這里是@Vel Ganesh的示例代碼,語法是固定的。 這很粗糙,但與jenkins合作2.7.4 2017年1月)。
按照@Akos Bannerth的回答。 將groovy腳本放入test.groovy文件中。
<html>
<body>
<%
import hudson.model.*
def build = Thread.currentThread().executable
def buildNumber = build.number
def buildNameJ = build.getDisplayName()
def testCount = "0"
def testPassed = "0"
def testFailed = "0"
def testSkipped = "0"
def buildDuration = "0"
if(build.testResultAction) {
def testResult = build.testResultAction
testCount = String.format("%d",(testResult.totalCount))
testPassed = String.format("%d",(testResult.result.passCount))
testFailed = String.format("%d",(testResult.result.failCount))
testSkipped = String.format("%d",(testResult.result.skipCount))
buildDuration = String.format("%.2f",(testResult.result.duration ))
}
def workspace = build.getEnvVars()["WORKSPACE"]
def buildName = build.getEnvVars()["JOB_NAME"]
def BUILD_STATUS = build.getEnvVars()["BUILD_STATUS"]
def BUILD_URL = build.getEnvVars()["BUILD_URL"]
def Test_Server_URL = build.getEnvVars()["Test_Server_URL"]
def Group_Name = build.getEnvVars()["Group_Name"]
%>
Summary test report <br><br>
<b><u>Configuration :</u></b><br>
Workspace : $workspace<br>
Project Name : $buildName $buildNameJ<br>
Test Server URL : $Test_Server_URL<br>
Group Name : $Group_Name<br><br>
<b><u>Execution Results :</u></b><br>
Status : <font color="blue">$BUILD_STATUS</font><br>
Tests run : $testCount<br>
Failures : $testFailed<br>
Errors : . . . TODO . . . <br>
Skipped : $testSkipped<br>
Total time : $buildDuration<br>
Finished at: Tue May 06 17:12:19 IST 2014<br>
Build URL : $BUILD_URL<br><br>
test.groovy
</body>
</html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.