我已经构建了一个阶段,它在构建结束时发送邮件,并显示它的状态,它运行完美。我想在此邮件中添加一份关于构建中的测试的 html 报告。问题是 .html 文件的名称包括它在每次构建后创建的日期和时间。这是我的邮件发送脚本
post{
always{
echo '------------------------------- SENDING INFORMATIVE MAIL -------------------------------'
emailext subject: "[Jenkins] ${currentBuild.displayName} : ${currentBuild.currentResult}",
body: '''${SCRIPT, template="groovy-html.template"}''', mimeType: 'text/html', attachLog: true,
to: """${RECIPIENTS}"""}
}
这是最后一次测试的文件名:
ADU_TEST_REPORT_02_03_2022_09_31.html
每次构建更改的部分是:_02_03_2022_09_31
它在路径中:C:\Jenkins\workspace\Deprtment\Builds\DevOps Builds\Checks\Test_Reports
我试图添加这个
(${FILE,path="C:\Jenkins\workspace\Deprtment\Builds\DevOps Builds\Checks\Test_Reports\ADU_TEST_REPORT*.html"})
到脚本,但它没有工作。我做错了什么?有谁知道如何以正确的方式做到这一点?
- - - - - - - - - - - - - - - - - - 更新 - - - - - - -------------------------------------------
我编写了一个 python 脚本,将最新文件名的名称(带有正确的日期和时间)写入 .txt 文件,然后我在管道中使用 groovy 读取了该 txt。但是当我将此字符串添加到文件路径时,它会向我发送一封包含错误的电子邮件:
错误:文件“C:JenkinsworkspaceDeprtmentBuildsDevOps BuildsChecksTest_Reports${testReportName}”不存在
我究竟做错了什么?这是我的代码:
post{
always{
script{
echo '------------------------------- RUN PYTHON SCRIPT THAT FINDS TEST REPORT NAME -------------------------------'
bat """${python_27} "C:\\Users\\dp1234\\Desktop\\TestReportName.py" """
echo '------------------------------- PYTHON SCRIPT EXECUTED - TEST REPORT NAME SAVED IN .txt -------------------------------'
echo '------------------------------- RECEIVE TEST REPORT NAME -------------------------------'
def testReportName = readFile "C:\\Users\\dp1234\\Desktop\\testReports.txt"
echo """${testReportName}"""
echo '------------------------------- TEST REPORT NAME SAVED -------------------------------'
echo '------------------------------- SENDING INFORMATIVE MAIL -------------------------------'
emailext subject: "[Jenkins] ${currentBuild.displayName} : ${currentBuild.currentResult}",
body: '''${SCRIPT, template="groovy-html.template"}''', mimeType: 'text/html', attachLog: true,
//body: '''${FILE, path="C:\\Jenkins\\workspace\\Deprtment\\Builds\\DevOps Builds\\Checks\\Test_Reports\\${testReportName}"}''', mimeType: 'text/html', attachLog: true,
to: """${RECIPIENTS}"""}
}
}