2016-10-24 98 views
5

在“全局属性”中的Jenkins配置(http://JenkinsURL/configure)中,我定义了一些“环境变量”。如何在Jenkins Groovy脚本控制台中获取环境变量?

如何在Groovy Script控制台(http://JenkinsURL/script)中访问它们?

我试着找到适当的解决方案(例如提到的解决方案:Access to build environment variables from a groovy script in a Jenkins build step (Windows)) 但它们似乎没有一个适合我。

我试过例如:

System.getenv("myVar") 

manager.build.getEnvironment(listener).get('myVar') //no manager error 

import jenkins.model.Jenkins 
Jenkins.instance.getProperty('myVar') //No signature of method: hudson.model.Hudson.getProperty() is applicable for argument types: (java.lang.String) 

import jenkins.model.Jenkins 
Jenkins.instance.ParameterValue("DEV_local") 

回答

7

你可以得到全局属性是这样的:

def envVars = Jenkins.instance.getGlobalNodeProperties()[0].getEnvVars() 
println envVars['myVar'] 

我提到下面的链接,了解如何设置全球编程特性。 https://groups.google.com/forum/#!topic/jenkinsci-users/KgCGuDmED1Q

+0

太棒了!有用。 – matandked

+0

我想知道是否可以读取“掩码密码 - 全局名称/密码对”(在http:// JenkinsURL/configure中定义)。 – matandked