Запустить Grunt.js с Дженкинсом

Я установил Gruntfile с мокко-тестированием и JSlint. Это отлично работает, если я просто запускаю grunt из терминала.

Я хочу запустить grunt от Jenkins!

Я установил новое задание → и создал его для оболочки script и включил:

/usr/local/bin/grunt

Как только я запустил задание, вывод терминала Дженкинса говорит:

[workspace] $ /bin/sh -xe /tmp/hudson8550584576040162032.sh
+ /usr/local/bin/grunt
/usr/bin/env: node: No such file or directory
Build step 'Execute shell' marked build as failure
Finished: FAILURE

Кажется, что это не очень хорошо node бинарный!?! но node установлен и работает нормально в терминале!

Все мои двоичные файлы (mocha, grunt, node) находятся в /usr/local/bin/

Кто-нибудь знает, в чем проблема? Или, может быть, у кого-то есть ссылка, чтобы установить grunt.js с jenkins?

Кто-нибудь что-то получил?

спасибо

Ответы

Ответ 1

Это происходит потому, что Jenkins будет работать как другой пользователь, который, вероятно, не имеет /usr/local/bin в своем $PATH.

В вашей оболочке script убедитесь, что /usr/local/bin добавлен в ваш $PATH

export PATH="/usr/local/bin:$PATH"
# This will also mean you can call 'grunt' rather than '/usr/local/bin/grunt'
grunt

Это имеет дополнительное преимущество при вызове любых программ, которые вы установили в /usr/local/bin, чем-либо в /usr/bin. Если вы не хотите этого поведения, просто добавьте вместо prepend:

export PATH="$PATH:/usr/local/bin"
# This will also mean you can call 'grunt' rather than '/usr/local/bin/grunt'
grunt

Ответ 2

Честно говоря, я не знаком с Дженкинсом, но у меня была такая же проблема, когда я хотел интегрировать GruntJS с шагом пользовательской сборки XCode или в процессе развертывания TeamCity.

Я исправил свою проблему, добавив/usr/local/bin/в PATH в моей оболочке script перед запуском grunt или node. Что-то вроде:

PATH=${PATH}:/usr/local/bin
grunt

Я надеюсь, что это тоже поможет: -)

Ответ 3

вы можете разрешить настройку всего от jenkins:

Установка плагинов Jenkins

  • Git Плагин - для git
  • Git Клиентский плагин - для git
  • Git Плагин параметров - для git тегов
  • GitHub API Plugin - для github
  • Плагин NodeJS - интеграция для обычных инструментов javascript NodeJS и npm

Git/Ant/Установки Maven/NodeJS

  • Перейти к SERVER/jenkins/configure
Git
  • Git → git установки → Добавить git → JGit
  • Git плагин → Глобальная конфигурация user.name Значение = "Anthony Mckale", глобальная конфигурация user.email Value = "[email protected]"
NodeJS
  • NodeJS- > Установки NodeJS → Добавить NodeJS → Name = "NodeJS 0.11.10", отметьте "Установить автоматически", выберите "Установить с nodejs.org", добавьте "grunt-cli" к глобально установленным пакетам

TADA

и, надеюсь, git/nodejs и grunt будут доступны вам