将HTML页面内容显示到Jenkins电子邮件中

时间:2017-04-05 12:20:11

标签: jenkins jenkins-email-ext

我正在尝试将HTML页面内容显示到Jenkins电子邮件的正文中,我将以下代码添加到可编辑电子邮件插件的默认内容部分:

${FILE,path="/target/surefire-reports/html/index.html"}

我还尝试将以下代码添加到电子邮件插件中的预发送脚本:

def reportPath = build.getWorkspace().child("HealthTestResults.html")
msg.setContent(reportPath.readToString(), "text/html");

这两种方式都不起作用,我仍然收到空邮件。

2 个答案:

答案 0 :(得分:0)

尝试使用DSL,如果你不再需要一个Jenkins工作

你可以:

  1. 添加新的构建步骤"处理作业DSL" (您需要Job DSL Plugin
  2. 将此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")
    

    当然,您可以根据Docs

    自定义此部分

答案 1 :(得分:0)

尝试${FILE,path="target/surefire-reports/html/index.html"}?即没有/