суббота, 21 марта 2020 г.

Ошибка в Jenkins: newman: command not found

Установил мне админ Jenkins на моем сервере. Стала настраивать связку с Postman по инструкции — «Integration with Jenkins».

Вроде установила и nodejs, и newman. Запускаю тест, а он мне обломчик:


Started by user Админ 
Running as SYSTEM
Building in workspace /var/lib/jenkins/workspace/Newman_test
[Newman_test] $ /bin/sh -xe /tmp/jenkins166732700398555443.sh
+ newman run https://www.getpostman.com/collections/c2eb72db4c1191c3d36d
/tmp/jenkins166732700398555443.sh: 2: /tmp/jenkins166732700398555443.sh: newman: not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

Но как это «newman: not found»?? Ведь если зайти через SSH на сервер и запустить ту же самую команду

newman run https://www.getpostman.com/collections/c2eb72db4c1191c3d36d

То все работает!

Стала гуглить. Вот нашла ответ — надо в PATH добавить путь к newman:
  1. Настроить Jenkins → Конфигурация системы → Глобальные настройки
  2. Если PATH уже есть, то добавить туда путь к newman через разделитель :. Если там пусто, то добавить параметр PATH со значением «$PATH:/your/path/to/newman»
  3. Сохранить конфигурацию и перезапустить Jenkins
Сделала. Запускаю тесты вновь... Опять облом!

Started by user Админ
Running as SYSTEM
Building in workspace /var/lib/jenkins/workspace/Newman_test
[Newman_test] $ /bin/sh -xe /tmp/jenkins2994106746708573695.sh
+ newman run https://www.getpostman.com/collections/c2eb72db4c1191c3d36d
/tmp/jenkins2994106746708573695.sh: 2: /tmp/jenkins2994106746708573695.sh: newman: Permission denied
Build step 'Execute shell' marked build as failure
Finished: FAILURE

Теперь уже прав не хватает залезть в ньюман. Ну да, конечно, он ведь куда-то в root встал. Ну и что делать то? Можно запустить дженкинс от root пользователя — тогда все норм будет, но это как-то неправославненько.

Делегировала решение мужу-разарботчику )) Вот его вердикт:
1. Ты поставила не тот nodejs. Нужно брать от версии, которая коррелирует с ОС 
> curl https://deb.nodesource.com/setup_10.x | bash;
> apt-get install nodejs 
2. Надо выставить глобальный суффикс для конфигураций nvm 
see /etc/profile.d/nvm.sh 
3. Дальше все по офф инструкции от постмана
Так что если у вас тоже не получается, проверьте, как вы nodejs устанавливали. Может, тоже не ту версию вкорячили, а вот результат!

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

Отправить комментарий