是否可以在构建步骤中定义新的构建参数/ ENV变量,以便在下一个中可用?
假设我有两个不同的“执行shell”步骤,并希望在第二步中访问第一步中定义的变量。
PS :变量的值在运行时设置 - 从第三方资源读取,因此我无法对其进行编码,因此需要从shell脚本中设置它。
答案 0 :(得分:2)
插件EnvInject会为您做到这一点。
它可以配置为pre-SCM
步骤或build
步骤。将它放在你现有的两个构建步骤之间。
<强>更新强>
在您的情况下,可能更容易在“第二个构建步骤中读取”第三方“文件的值:
var=$(<3rdpartyfile.txt)
在上述行之后,3rdpartyfile.txt
的内容将在环境变量var
中提供。您现在可以像使用任何其他变量一样使用$var
答案 1 :(得分:0)
你也可以使用类似的东西
stage('stage-1') {
steps {
script{
env.variable = ${value};
}
}
}
现在您可以在整个管道中使用变量 env.variable