我在环境指令的管道顶部定义了环境变量:
environment {
var1 = 'sdfsdfdsf'
var2 = 'sssssss'
}
但是我需要在阶段中动态设置或覆盖一些内容。但是,如果我在一个阶段中使用environment {}指令,则其他阶段将无法访问var。最初,我认为我可以在top环境指令中使用默认值定义它们,并在管道中覆盖它们,但这是我观察到的行为:
script {env.var1 = 'new value'}
如何更改环境?
您可以按照以下步骤进行操作:
您可以在其他阶段访问相同的var并在环境{env.var1 ='value2'}中更改值
pipeline {
agent any
environment {
var1 = 'value'
}
stages {
stage('Initialize') {
steps {
script {
echo ("value : " + env.var1)
}
}
}
stage('build') {
environment {
var1 = 'value2'
}
steps {
script {
echo ("value : " + env.var1)
}
}
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句