如何使用DSL访问Jenkins环境变量?

Che*_*her 12 groovy jenkins

正如问题所说.我无法访问它.

尝试:

#1:

def env = System.getenv()
def BUILD_NUMBER= env["BUILD_NUMBER"]
Run Code Online (Sandbox Code Playgroud)

结果:

当我访问BUILD_NUMBER时为空

#2:

def BUILD_NUMBER= params["BUILD_NUMBER"]
Run Code Online (Sandbox Code Playgroud)

结果:

访问BUILD_NUMBER时为空此解决方案适用于我创建的环境变量

Che*_*her 11

找到答案: build.environment.get("BUILD_NUMBER")

  • 没有这样的属性:为类构建:groovy.lang.Binding (8认同)
  • @kylestephens 在 `build = Thread.currentThread().executable` 之前添加以下行 (2认同)

Ale*_*x O 7

这将与最新版本的 Jenkins 和 DSL 插件一起使用:

def BUILD_NUMBER = getBinding().getVariables().BUILD_NUMBER
Run Code Online (Sandbox Code Playgroud)