如何在Jenkins脚本化管道中使用变量?
我发现Jenkins忽略了我的变量如何在Jenkins脚本化管道中使用变量?,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我发现Jenkins忽略了我的变量${BuildFolder},谢谢你的帮助 node { def BuildFolder = '/Build/${JOB_NAME}'+ '.' +'${BUILD_ID}' stage ('prepare'){ sh "echo Build Folder: ${BuildFolder}" sh "rm -rf ${BuildFolder} && mkdir -p ${BuildFolder}" } sta
${BuildFolder}
,谢谢你的帮助
node {
def BuildFolder = '/Build/${JOB_NAME}'+ '.' +'${BUILD_ID}'
stage ('prepare'){
sh "echo Build Folder: ${BuildFolder}"
sh "rm -rf ${BuildFolder} && mkdir -p ${BuildFolder}"
}
stage ('Checkout'){
checkout([$class: 'GitSCM',
branches: [[name: '*/master']],
doGenerateSubmoduleConfigurations: false,
extensions: [[$class: 'RelativeTargetDirectory',
relativeTargetDir: '${BuildFolder}']],
submoduleCfg: [],
userRemoteConfigs: [[credentialsId: '',
url: '']]])
}
可以在管道块开始之前创建变量。那就应该是工作了 比如说,
def BuildFolder = '/Build/${JOB_NAME}'+ '.' +'${BUILD_ID}'
node
{
stage ('prepare')
{
sh "echo Build Folder: ${BuildFolder}"
sh "rm -rf ${BuildFolder} && mkdir -p ${BuildFolder}"
}
}
通过切换到“${BuildFolder}”可以解决此问题。它不起作用:org.jenkinsci.plugins.workflow.steps.MissingContextVariableException:缺少必需的上下文类hudson.FilePath可能您忘记了在代码中使用提供此功能的步骤,例如:node