我以前使用的是Jenkins管道,我在其中使用withEnv将环境变量插入步骤:
stage('Set build number'){
steps {
sh 'chmod +x scripts/setBuildVersion.sh'
withEnv(['DEPLOY_VERSION=$env.GIT_COMMIT']) {
sh 'scripts/setBuildVersion.sh'
}
}
}
在setBuildVersion.sh里面,我有以下内容: 打印环境 sed -i“ s / @@ BUILD_NUMBER @@ //版本$ DEPLOY_VERSION / g” deployment.properties
我发现printenv命令可以看到我的DEPLOY_VERSION环境变量,但是我尝试了多种编辑sed命令的方法,但是withEnv将输入视为文本,因此$ DEPLOY_VERSION被替换为字符串$ env.GIT_COMMIT而不是变量的值。
我在这里想念什么?它在Linux jenkins服务器(Jenkins版本2.138.2。)上运行。感谢您提供的指导。
答案 0 :(得分:0)
使用${env.GIT_COMMIT}
而不是$env.GIT_COMMIT