Переменная среды Seed Job ${WORKSPACE} присваивается дочерним заданиям

Создайте задание с использованием DSL, которое создаст 5 дочерних заданий. На этапе сборки я должен использовать переменную окружения ${WORKSPACE}, которая должна считывать значение с ведомого компьютера, на котором выполняется дочернее задание. Но, тем не менее, при создании дочерних заданий значение рабочей области заменяется расположением рабочей области SeedJobs с главного сервера.

Как бы я ограничил начальное задание, чтобы не вводить его значение ${WORKSPACE}.

Может ли кто-нибудь помочь мне в этом, пожалуйста.

Спасибо Мано

1 ответ

Решение

Чтобы сослаться на BUILD_NUMBER сгенерированного задания в вашем коде job-dsl, вы должны кодировать его следующим образом:

"\${BUILD_NUMBER}"

Важной частью является знак \ before $, который предотвращает оценку переменной BUILD_NUMBER, поскольку она относится к среде выполнения Goovy, которая (вероятно) является вашим начальным заданием Jenkins job-dsl.

Файл config.xml сгенерированного задания будет содержать ${BUILD_NUMBER} вместо цифры, которая представляет номер сборки вашего начального задания. И тогда ваша сгенерированная работа оценит это при запуске.

Другие вопросы по тегам