我是Jenkins管道的新手,我的任务是使用cft创建aws云形成堆栈,并且堆栈名称应为1-9999之间的随机数,因为我正在使用 shuf 命令生成数字并存储在变量中。
UserDefaults.standard.synchronize()
我能够打印变量,但是当我在堆栈创建管道中使用此变量时,会自动添加新行。
您能建议我在这里做错了吗?
pipeline {
agent { node { label 'ansible-serverless' } }
stages {
stage('Verify CFT') {
options {
withAWS(credentials:'jenkin_user_s3_9834',region:'us-east-1')
}
steps {
node ('jenkins_ec2_9835'){
script {
sh '''shuf -i 1-10000 -n 1 > outFile'''
// curDate = readFile 'outFile'.trim()
curDate = readFile 'outFile'.replaceAll("(?m)^[ \t]*\r?\n", "")
echo "The current number is ${curDate}"
}
sh "echo ${curDate}"
cfnUpdate(url:'https://s3.amazonaws.com/artifacts/100GB_DB_ecosystem_full_enterprise.json', paramsFile:'/tmp/parameter-56.json',stack:"""CICD"${curDate}"-test""")
cfnDescribe(stack:"CICD"${curDate}"-test")
}
}
}
}
}
答案 0 :(得分:0)
问题似乎出在字符串插值(http://docs.groovy-lang.org/latest/html/documentation/#_string_interpolation)上。
尝试像这样替换curDate变量:
cfnDescribe(stack:"CICD${curDate}-test")