没有在詹金斯电子邮件中附上魅力报告

时间:2020-07-06 18:13:57

标签: jenkins jenkins-pipeline allure

未在詹金斯电子邮件中附加吸引力报告。我正在使用Jenkins管道脚本,这是我的脚本,但这是我在电子邮件中收到的错误:

Groovy Template file [allure-report.groovy] was not found in $JENKINS_HOME/email-templates.

我也无法在计算机上找到allure-report.groovy

这是我的詹金斯管道,我不确定如何包括该模板:

pipeline {
    
    agent {
        label {
            label ""
            customWorkspace "/john/qa-end-to-end"
        }
    }


  tools {nodejs "node"}

  stages {
        stage('Checkout App') {
            steps {
                dir("${env.HOME}/app") {
                echo "Building.."
                sh 'git reset --hard HEAD'
                sh 'git clean -f -d'
                sh 'git pull'
                }
            }
        }
        

          stage('Starting Tests') {
            steps {
                echo "Starting End to End Tests"
                dir("${env.HOME}/qa-end-to-end/") {
                sh './tests.sh'
            }
          }
        } 

    }
    
        post('Publish Report') {
          always {
            script {
              allure([
                includeProperties: false,
                jdk: '',
                properties: [],
                reportBuildPolicy: 'ALWAYS',
                results: [[path: '$WORKSPACE/${env.HOME}/app/target/allure-results']]
              ])
            }
            
          
        }
        failure {
        emailext(
        attachmentsPattern: "$WORKSPACE/${env.HOME}/qa-end-to-end/allure-report/index.html", 
        body: '''${SCRIPT, template="allure-report.groovy"}''',
        subject: "Failure in End to End Tests -> Build Number: ${env.BUILD_NUMBER}", 
        from: "john@gmail.com",
        to: "mike@gmail.com"
        )
        }
        }
        
}  

1 个答案:

答案 0 :(得分:1)

$JENKINS_HOME/email-templates用于放置电子邮件正文模板,通常当您安装email之类的Jenkins插件时,它包含一些预定义的模板,并且这些模板将在之后提取到$JENKINS_HOME/email-templates中插件已安装。

当您在Job的Post Action中使用send email时,您可以选择使用插件模板之一,Jenkins会尝试从文件夹$JENKINS_HOME/email-templates中获取模板

如果要使用自我模板,则也需要将其放入$JENKINS_HOME/email-templates

使用自定义脚本(未与email-ext打包在一起)需要Jenkins管理员的配合。步骤相对简单:

  1. 创建脚本/模板。脚本的名称以该语言的标准扩展名(.groovy)结尾。模板可以命名为任何
  2. 让您的Jenkins管理员将脚本放在$ JENKINS_HOME \ email-templates中。
  3. 使用脚本令牌,其模板参数等于模板文件名,或者另外,脚本参数等于自定义脚本名称。例如,如果模板文件名是foobar.template,则电子邮件内容将类似于此$ {SCRIPT,template =“ foobar.template”}。

More detail