Мне нужна помощь в интеграции кода транспортира с Jenkins. Я новичок в Jenkins, поэтому я не уверен, подходит ли Jenkins или Cruise Control, поскольку в настоящее время у нас есть сборки в Cruise Control, но мы можем перейти на Jenkins, если это лучше. Может ли кто-нибудь помочь мне с любыми учебными пособиями, чтобы связать мою задачу транспортира с Дженкинсом или круиз-контролем? В настоящее время мы используем Gulp в качестве оболочки над кодом Javascript для выполнения. Мы запускаем его с помощью команды Gulp test --site folder name
Должен ли я просто указать эту команду в параметре Execute shell script Jenkins?
интеграция транспортира с jenkins
Ответы (2)
Да, запустить тесты Protractor из любого инструмента CI несложно.
Шаг 1: Просто настройте задание круиз-контроля/Jenkins с помощью «Выполнить оболочку» в качестве шага сборки. Шаг 2: В зависимости от вашего выбора запущенных тестов.. создайте файл bat
echo Protractor Execution
Protractor protractor.conf.js // In case running with protractor
npm run --e2etests // In case running with npm run config in package.json
Gulp test --site folder name // In your case
echo Over and out.
Шаг 3. Укажите шаг сборки задания, чтобы запустить пакетный файл.
person
AdityaReddy
schedule
07.09.2016
Я попытался использовать команду /Users/akuchhal/Desktop/tests/file.bat в Execute Shell, а также упомянул следующее в файле .bat, но это не работает. echo Protractor Execution Gulp test --site имя папки echo Снова и снова. есть ли что-нибудь еще, что мне нужно сделать.
- person NewWorld; 07.09.2016
Вы запускали файл bat напрямую и проверяли, работает ли он, прежде чем запускать его из Jenkins?
- person AdityaReddy; 07.09.2016
Нет, это не работает. Он говорит, что команда не найдена. Раньше выдавала ошибку разрешения, и когда я использовал sudo ./file.bat, он говорит, что команда не найдена
- person NewWorld; 07.09.2016
Вы запускаете его на локальной машине или на машине Дженкинса? Узел и его зависимости установлены на машине Jenkins? пакеты gulp установлены? Это работало в командной строке? если заработало..бат файл не отличается....
- person AdityaReddy; 07.09.2016
Команда, которую я имею в файле .bat, - это gulp test --site имя папки. Это работает нормально, когда я запускаю ее в терминале.
- person NewWorld; 07.09.2016
Я использую его на локальной машине. Да, узел и все остальное установлено, и эта команда отлично работает в терминале.
- person NewWorld; 07.09.2016
Я не уверен, что вы имеете в виду «cmd», когда говорите «терминал». Но какую машину вы используете? если окна .. можете ли вы подтвердить, пробовали ли вы то же самое из cmd и сработало ли это?
- person AdityaReddy; 07.09.2016
Я использую MAC-терминал
- person NewWorld; 07.09.2016
о .. в mac файле bat все работает по-другому, и, возможно, вам нужны настройки пути. Просто попробуйте указать команду непосредственно в Jenkins вместо файла .bat и проверьте, все ли в порядке. Если нет... возможно, вам нужно указать путь - stackoverflow.com/questions/24027551/
- person AdityaReddy; 07.09.2016
Сейчас он запускается из Jenkins, но получает ошибку Ошибка: ENOENT: нет такого файла или каталога, откройте «.env» при ошибке (собственный) в Object.fs.openSync (fs.js:640:18) в Object.fs. readFileSync (fs.js:508:33) в Object.config (/Users/akuchhal/.jenkins/workspace/Demo/node_modules/dotenv/lib/main.js:30:37) в Object.‹anonymous› (/Users /akuchhal/.jenkins/workspace/Demo/ProtractorConfig.js:2:19) в Function.Module._load (module.js:424:3) errno: -2, код: 'ENOENT', системный вызов: 'open', путь: '.env' }
- person NewWorld; 07.09.2016
Я разобрался с этим. Он отлично работает, когда я напрямую ввожу команду транспортира в Дженкинсе. У меня есть некоторые проблемы с командой gulp в jenkins, но я открою отдельный поток по этому поводу.
person
NewWorld
schedule
08.09.2016