Отобразить содержимое HTML-страницы в электронную почту Jenkins
Я пытаюсь отобразить содержимое HTML-страницы в теле письма Jenkins, я добавил следующий код в раздел содержимого по умолчанию в плагине Editable Email:
${FILE,path="/target/surefire-reports/html/index.html"}
Также я попытался добавить следующий код в сценарий предварительной отправки в плагине электронной почты:
def reportPath = build.getWorkspace().child("HealthTestResults.html")
msg.setContent(reportPath.readToString(), "text/html");
оба способа не сработали, и я все еще получаю пустые письма.
2 ответа
Как насчет попробовать с DSL, если вы не хотите иметь еще одну работу Дженкинс
Вы можете:
- Добавьте новый шаг сборки "Обработать Job DSL" (вам потребуется Job DSL Plugin)
- Добавьте этот Groovy-скрипт в поле "Использовать предоставленный DSL-скрипт"
Groovy скрипт
job(jobname_to_your_email_job) {
publishers {
extendedEmail {
recipientList(your_email_list)
defaultSubject(your_subject)
defaultContent(your_default_content)
contentType('text/html')
triggers {
always {
subject(your_subject)
//read your html file and put it in the content field
content(readFileFromWorkspace(path_to_your_html_file))
sendTo {
recipientList()
}
}
}
}
}
}
//This will put your email job to the build queue so your email job will run automatically
queue("Email Report")
И, конечно, вы можете настроить эту часть в соответствии с документами
Пытался ${FILE,path="target/surefire-reports/html/index.html"}
? т.е. без /