【发布时间】:2019-08-28 04:24:48
【问题描述】:
我想使用共享库将多个环境变量注入多个 jenkinsfile,因为 env 变量在这些多个 jenkinsfile 中是通用的。 Motive 是在全局级别注入属性,以便变量是全局的并且可以在整个管道中访问。
我尝试了以下方法: 一种。在 jenkinsfile 中使用环境标签。这需要在所有 jenkinsfile 中完成,因此没有代码可重用性。 湾。我能够在阶段的脚本标签内注入环境变量。但我想在管道代码开始之前做。这就像可以从管道中的任何位置访问的全局属性。
而不是下面的:
//Jenkins文件
pipeline {
environment {
TESTWORKSPACE="some_value"
BUILDWORKSPACE="some_value"
...
...
30+ such env properties
}
}
我正在寻找可以在共享库 groovy 脚本中声明这些环境变量的东西,然后在整个管道中访问它。如下所示:
//Jenkins文件
def call(Map pipelineParams) {
pipeline {
<code>
<Use pipelineParams.TESTWORKSPACE as a variable anywhere in my pipeline>
}
}
【问题讨论】:
-
您找到解决方案了吗?我有同样的问题,还没有想出如何解决这个问题
标签: environment-variables jenkins-pipeline shared-libraries jenkins-groovy jenkins-declarative-pipeline