Запустить 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 будут доступны вам