Плагин Jenkins NodeJS: не может выполнить 'узел'

При использовании инструмента NodeJS на ведомом устройстве, для которого настроен глобальный пакет, выдается следующая ошибка:

env: can't execute 'node': No such file or directory

Если сборка выполняется на исполнителе в master, ошибки не возникает, и пакет устанавливается должным образом.

Я использую плагин kubernetes с jenkins/jnlp-slave:3.27-1 как рабский образ.

Дженкинс Версия: 2.164.2
Плагин Kubernetes: 1.14.9
Плагин NodeJS: 1.2.9

Примечание: это не дубликат Jenkins - env: 'node': нет такого файла или каталога, так как я не использую альпийское изображение, так как это была проблема в этом вопросе.

0 ответов

Та же проблема с моим Дженкинсом.

Программа установки "скачать с nodejs.org" извлекает пакет узла в локальный каталог.

Затем он запустит "npm install -g" для каждого из пакетов, перечисленных в поле "Глобальные пакеты npm для установки" в конфигурации установщика NodeJS ("Глобальная конфигурация инструмента").

Однако он делает это перед установкой системного PATH в каталог, в котором он извлек node, поэтому npm не найдет node.

Я убежден, что это ошибка в плагине NodeJS Jenkins. Как сказал Agusluc, вы можете создать собственный образ jnlp-slave (что я и сделал) или сообщить об ошибке разработчику плагина и надеяться, что она будет исправлена.

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