【发布时间】:2020-12-09 21:35:01
【问题描述】:
我有一个包含管道的 Jenkinsfile。我设置了一个可选的参数,如果没有设置参数,也会设置一个默认值:
parameters {
string(name: 'MY_VAR', defaultValue: 'foo', description: 'my var that can be optional')
}
在阶段的中间,我想用一些其他值覆盖(仅在某些时候,并且只有在传递了一些其他特定参数的情况下)这个“my_var”。
到目前为止,这是可行的:
stage('Build') {
steps {
env.MY_VAR="foobar"
}
}
但我想从文件中读取该变量,所以我想做类似的事情:
stage('Build') {
steps {
// Of course none of following work
env.MY_VAR=$(cat /tmp/my-file)
//or
sh "new_var=$(cat /tmp/my-file)"
env.MY_VAR=$new_var
}
}
我怎样才能做到这一点?
【问题讨论】:
标签: java jenkins groovy jenkins-pipeline