2016-10-24 25 views
5

Trong cấu hình Jenkins (http://JenkinsURL/configure) trong "Thuộc tính chung", tôi đã xác định một số "Biến môi trường".Làm cách nào để nhận biến môi trường trong bảng điều khiển kịch bản lệnh Jenkins Groovy?

Tôi làm cách nào để truy cập chúng trong bảng điều khiển Groovy Script (http://JenkinsURL/script)?

Tôi đã cố gắng tìm giải pháp thích hợp (ví dụ: các giải pháp được đề cập trong: Access to build environment variables from a groovy script in a Jenkins build step (Windows)) nhưng có vẻ như không ai trong số họ làm việc cho tôi.

Tôi đã thử ví dụ:

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") 

Trả lời

7

Bạn có thể nhận tính toàn cầu như thế này:

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

tôi gọi liên kết dưới đây, khoảng cách thiết tính toàn cầu programatically. https://groups.google.com/forum/#!topic/jenkinsci-users/KgCGuDmED1Q

+0

Tuyệt vời! Nó hoạt động. – matandked

+0

Tôi tự hỏi liệu có thể đọc "Mật khẩu mặt nạ - Cặp tên/mật khẩu chung" (được định nghĩa trong http: // JenkinsURL/configure) hay không. – matandked

Các vấn đề liên quan