Как получить значения переменных env, написав groovy скрипт в консоли скриптов jenkins? - PullRequest
1 голос
/ 06 июня 2019

Я много искал эту проблему, но нигде не мог найти работающего решения.Кто-нибудь может помочь мне?Я хочу получить уже существующее значение env vars через консоль сценария jenkins.

Ответы [ 2 ]

0 голосов
/ 06 июня 2019

Согласно этому ответу , чтобы получить доступ к env vars из консоли сценариев Jenkins, сделайте следующее:

import jenkins.model.*;
import hudson.slaves.EnvironmentVariablesNodeProperty;
import hudson.EnvVars;

jenkins = Jenkins.instance;
EnvironmentVariablesNodeProperty prop = jenkins.getGlobalNodeProperties().get(EnvironmentVariablesNodeProperty.class)
EnvVars env = prop.getEnvVars()

def myVariable = env['MY_VAR']

Перечисленные в * 1006 переменные env доступны для каждой сборки. Чтобы получить доступ к этим переменным в консоли сценария Jenkins, вам нужно сначала определить сборку:

build = Jenkins.instance.getItemByFullName('JOB_NAME').getBuildByNumber(BUILD_NUMBER)
envvars = build.getEnvironment()
envvars.each{envvar ->
  println envvar
}
0 голосов
/ 06 июня 2019

Необходимо различать:

Если вы видите

 groovy.lang.MissingPropertyException: No such property: manager for class: Script1

Проверьте этот ответ и определите build сначала:

import hudson.model.*

def build = Thread.currentThread().executable
def buildNumber = build.number
...