如何在 Jenkins 管道中传递字符串参数以自定义电子邮件分机?
How to pass string paramter in Jenkins pipeline to customize emailext?
我正在尝试使用 env 参数来自定义电子邮件正文。但是我做不到。
String parameter1 : NAMESPACE = abcd
詹金斯管道:
agent{ label 'apps' }
stages {
stage("Checkout Sourcecode") {
xxxxxx
}
stage('Create namespace'){
steps {
sh """kubectl create namespace ${env.NAMESPACE}"""
}
}
stage ("Clearing Workspace"){
steps{
cleanWs()
}
}
}
post {
success {
emailext body: '''Hi,
${env.NAMESPACE} is created.
Build is ${currentBuild.currentResult}
Regards,
DT''', subject: 'Build ${BUILD_STATUS} - Build #${BUILD_NUMBER}', to: 'abc@xyz.com'
}
}
}
邮件输出:
Subject: Build Success - Build #8
Hi,
${env.NAMESPACE} is created.
Build is ${currentBuild.currentResult}
Regards,
DT
预期输出正在获取 NAMESPACE 和 currentBuild.currentResult 的值。
我做错了什么?
您需要使用双引号(三重双引号)来使用字符串插值。有关更多信息,请参见此处。
我正在尝试使用 env 参数来自定义电子邮件正文。但是我做不到。
String parameter1 : NAMESPACE = abcd
詹金斯管道:
agent{ label 'apps' }
stages {
stage("Checkout Sourcecode") {
xxxxxx
}
stage('Create namespace'){
steps {
sh """kubectl create namespace ${env.NAMESPACE}"""
}
}
stage ("Clearing Workspace"){
steps{
cleanWs()
}
}
}
post {
success {
emailext body: '''Hi,
${env.NAMESPACE} is created.
Build is ${currentBuild.currentResult}
Regards,
DT''', subject: 'Build ${BUILD_STATUS} - Build #${BUILD_NUMBER}', to: 'abc@xyz.com'
}
}
}
邮件输出:
Subject: Build Success - Build #8
Hi,
${env.NAMESPACE} is created.
Build is ${currentBuild.currentResult}
Regards,
DT
预期输出正在获取 NAMESPACE 和 currentBuild.currentResult 的值。 我做错了什么?
您需要使用双引号(三重双引号)来使用字符串插值。有关更多信息,请参见此处。