3

Есть ли возможность получить карту переменных окружения, которые используются в Jenkins? Я пытаюсь разработать свой собственный плагин и вам нужно получить доступ к переменной BUILD_USER_ID, которая предоставляется плагином для сборки vars.Разработка плагинов Jenkins - переменные окружения

Существует класс EnvVars, который наследуется от TreeMap, но он явно пуст, если вы создаете объект этого.

EnvVars env = new EnvVars(); 

Где хранятся эти переменные, чтобы я мог их получить и использовать в моем плагине?

ответ

0

Я ожидаю, что вы имеете в виду строковые переменные, введенные Build User Vars Plugin в сборку.

Если вы заинтересованы в том, чтобы читать конфигурацию статических заданий (например, из скрипта системы groovy), используйте job.getBuildWrappersList().get(org.jenkinsci.plugins.builduser.BuildUser.class), чтобы получить настроенный пользователем экземпляр BuildUser. Однако, если подключить плагин Build User Vars, чтения не так много.

Если вы хотите получить доступ к фактической переменной величине инжектированной в процесс сборки (из BuildStep, например), вызовите build.getEnvironment(TaskListener) получить заселен EnvVars экземпляр со всеми переменными. Обратите внимание, что эти переменные недоступны вне контекста сборки.

+0

Привет @Oliver Gondža, я работаю над плагином Jenkins, и мне нужно сделать переменную среды доступной для всех работ в Jenkins. Похоже на переменную глобальной среды Jenkins, за исключением того, что я не хочу ее настраивать. Я фиксирую значение для env var из раздела глобальной конфигурации Jenkins моего плагина, но тогда я не уверен, как наилучшим образом разоблачить его как глобальный env var. Можете ли вы указать мне в правильном направлении? – Mig82

+0

@ Mig82, пожалуйста, направляйте такие вопросы в список рассылки Jenkins Development. –

+0

Спасибо @Oliver Gondža, я только что сделал это. – Mig82

Смежные вопросы