我正在Jenkinsfile的其中一个阶段中定义Shell脚本。如何使用shell脚本访问在Jenkinsfile中定义的变量?
在以下情况下,我将shell变量的值写入文件并读入groovy变量。有没有一种方法可以将数据从外壳传递到groovy而不将其写入文件系统?
unstash 'sources'
sh'''
source venv/bin/activate
export AWS_ROLE_ARN=arn:aws:iam::<accountid>:role/<role name>
layer_arn="$(awssume aws lambda list-layer-versions --layer-name dependencies --region us-east-1 --query \"LayerVersions[0].LayerVersionArn\" | tr -d '\"')"
echo $layer_arn > layer_arn
'''
layer_arn = readFile('layer_arn').trim()
答案 0 :(得分:1)
sh "some stuff $my_var"
withEnv(["MY_VAR=${my_var}") {
sh 'some stuff'
}
致谢