В моем конвейере я хотел бы получить файл, задав переменные окружения, такие как . ./file.sh
, и оставить их установленными для остальной части конвейера. Я думаю, что это не реализовано, учитывая, что есть проблема, открытая уже несколько лет https://issues.jenkins-ci.org/browse/JENKINS-10773
В данный момент я тестировал: выведите разные значения. Я ожидаю, что Дженкинс каждый раз будет создавать новую оболочку. Есть ли возможность не вызывать новую оболочку?.
Насколько я знаю, я вижу 3 возможности:
- Выполнить все мои команды в одном операторе
sh
или обернуть выполнение в скрипте. Проблема в том, что это делает отладку довольно сложной. - Исходный файл для каждой команды sh.
- Создание пользовательской функции groovy, заключающей вызов.
Два последних решения звучат грязно, любые предложения приветствуются.