В настоящее время я делаю некоторую оценку плагина Jenkins Pipeline (ранее известного как плагин Workflow). Чтение документации я обнаружил, что я в настоящее время не могу retriev пути рабочего пространства с помощью env.WORKSPACE
:Получить абсолютный путь к каталогу рабочей области в плагине Jenkins Pipeline
Следующих переменных в настоящее время недоступен внутри сценария рабочего процесса:
NODE_LABELS
WORKSPACE
SCM-специфичные переменные, такие как SVN_REVISION
Есть ли другой способ, как получить абсолютный путь к текущему рабочему пространству? Мне нужно, чтобы это выполняло некоторый тест, который, в свою очередь, получает некоторый параметр (абсолютный путь к некоторому исполняемому файлу). Я уже пробовал использовать new File("").absolutePath()
внутри раздела @NonCPS
, но похоже, что материал, не относящийся к CPS, всегда выполняется на главном компьютере.
Кто-нибудь знает, как получить этот путь без работает какой-то пакетный скрипт, который хранит путь в некоторый файл, который позже можно прочитать снова?
Черт. Наверное, нужны очки. Полностью пропущено, что есть pwd(). Это именно то, что я искал. Благодаря! –
И все же, согласно обсуждению в [этом билете] (https://issues.jenkins-ci.org/browse/JENKINS-33511), 'pwd()' вернет рабочую директорию мастера, а не узел, на котором вы находитесь. –
Факт, который я только что подтвердил сам. 'pwd()' будет _not_ работать с подчиненными, если только они не имеют ту же структуру каталогов, что и главный. –