如何从作业中设置环境变量并在jenkins的下一个作业中使用它?

Sre*_*a E 6 jenkins jenkins-plugins jenkins-workflow

我想要一份工作来设置环境变量,并在所有下一个工作中使用这些环境变量.如何通过Jenkins设置环境变量?

Pat*_* M. 8

从技术上讲,你不能将env变量从一个作业传递到下一个作业,我不知道有一个插件可以开箱即用.

然而,有一种技术.我们的想法是在第一个作业中创建一个属性文件(例如exported.properties),将该文件添加到作业工件中,然后通过第二个作业中的EnvInject插件导入该文件.

这预先假定您在第一个和第二个作业之间有一些链接,这通常通过Copy Artifact插件实现,但是许多类似工作流的插件也可以帮助您.

例如,要创建属性文件,请添加步骤"Execute shell",例如

echo "# Saving some version properties
BUILD_VERSION=${BuildVersion}
BUILD_NODE_NAME=${NODE_NAME}
SOURCE_JOB=${JOB_NAME}
" > ${WORKSPACE}/BuildVersion.properties
Run Code Online (Sandbox Code Playgroud)

当然,您可以使用其他构建步骤,例如Windows shell,groovy脚本等......当然每个步骤都有其特定的语法.