无法在jenkinsfile中获取BUILD_STATUS全局变量



我试图在jenkinsfile中发送电子邮件,电子邮件主题包含两个变量,其中一个存在于jenkinsfileAPP_NAME上,另一个是jenkins全局变量BUILD_STATUS

im获取null而不是构建状态的实际值

environment {
mvnHome = tool name: 'myMvn', type: 'maven'
mvnCMD = "${mvnHome}/bin/mvn"
APP_NAME = 'test'
}

post {
success {
emailext body: '$DEFAULT_CONTENT',
to: '$DEFAULT_RECIPIENTS',
subject: "${APP_NAME} Health Check: ${env.BUILD_STATUS}",
attachmentsPattern: "**/target/${APP_NAME}.jpg"
}
}

当我在下面的表格中更改主题时

带有单引号的"$APP_NAME运行状况检查:$BUILD_STATUS"我得到了实际的生成状态,但APP_NAME显示在电子邮件$APP_NAME中,而不是实际名称

如何解决此冲突BUILD_STATUS需要单引号,但APP_NAME需要双引号

通过创建新变量来解决包括BUILD_STATUS全局变量

environment {
DEFAULT_SUBJECT = 'Health Check: $BUILD_STATUS'
}

然后调用这个变量,如下所示

emailext body: '$DEFAULT_CONTENT',
to: '$DEFAULT_RECIPIENTS',
subject: "${APP_NAME} ${DEFAULT_SUBJECT}",
attachmentsPattern: "**/target/${APP_NAME}.jpg"
}

最新更新