Подчиненное устройство Дженкинса переопределяет переменную среды, заданную ведущим устройством при выполнении задания многоотраслевого конвейера

#jenkins #master-slave #multibranch-pipeline

#Дженкинс #ведущий-подчиненный #многоотраслевой конвейер

Вопрос:

Я настроил Jenkins с master узлом, на котором работает Ubuntu, и slave узлом. В настоящее время Jenkins используется для создания приложения для Android ( master и slave имеет разные ANDROID_SDK_ROOT переменные среды).

Для slave я настроил переменные среды, как показано ниже:

введите описание изображения здесь

free style Проект выполняется нормально, и подчиненное устройство может получить переменную среды. Проблема возникает, когда я запускаю задание многоотраслевого конвейера. Кажется, задание не может environment variable получить ошибку always show:

SDK location not found. Define location with an ANDROID_SDK_ROOT environment variable or by setting the sdk.dir path in your project's local properties file at

В чем основная причина и как сделать так, чтобы многоотраслевой конвейер мог выбирать правильную переменную среды?

Обновлено: я обнаружил проблему, потому slave что не могу переопределить значение переменной среды, заданное master . Но я не знаю, как сделать так, чтобы подчиненный мог переопределять переменную среды, установленную мастером.

Комментарии:

1. Вы на 100% уверены, что ваш конвейер правильно нацелен на подчиненное устройство (и не запускается с главного устройства)?

2. Да, я вижу из вывода консоли, что задание выполняется с подчиненного устройства (для главного исполнителя установлено значение 0). Задание Freestyle выполняется нормально

3. на самом деле моя проблема в том, что подчиненный не может переопределить среду, заданную мастером ANDROID_SDK_ROOT