2016-10-24 61 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