Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Параллельный запуск сборок с помощью Jenkins


(Татьяна Иванова) #1

Скачала последнюю версию Jenkins с сайта.
Создала в Jenkins 2 Item : Tests и Tests2.
Каждый Item запускается и собирается успешно по отдельности. Каждый Item запускает свой сьют тестов.
В общих настройках Jenkins (Конфигурация системы) стоит 5 сборщиков.

В конфигурации каждой сборки (Item Tests и Item Tests2) выставлены настройки “Разрешить параллельный запуск задачи” (если правильно поняла, должны позволять сборке выполняться параллельно).

Итог такой, что при запуске вручную одной сборки, а следом за ней второй (вручную запускаю, первая начала только выполняться), первая по счету начинает выполняться, вторая тоже (как на рис. ниже)

Но проходит несколько секунд и выполнение второй (Tests) прекращается.
Вопрос: почему так происходит?

В логе неудачной сборки следующее:

Ругается на директорию, но если сборку запустить одну, то все нормально. И в конце нет этого “@2”.
Как запустить сборки параллельно? Настройки их отличаются только именем запускаемого сьюта.


(Ray Romanov) #2

Ну в ошибке написано, что мавену не нравится каталог с окончанием ‘@2


(Татьяна Иванова) #3

Не нравится. Но не понятно, откуда он его берет.


И почему каталог при одиночном запуске один, при параллельном - другой.


#4

А джобы выполняют тебя же самые тесты в одной и той же директории ? вас ничего не смущает? :slight_smile:
И в дженкинс 2 вроде есть pipeline plugin, в котором можно заскриптовать параллельное выполнение джоб


(Vasiliy Rakshin) #5

Раз у вас проект в одной папке, то скорее всего там ресурсы какие-то блочатся при запуске одной сборки и другая просто не может это сделать
Вам надо тогда в разных задачах использовать разные папки.
Либо делать одну задачу, но использовать встроенные средства запуска в параллель тестов тестовым фреймворком.
Для начала и простоты попробуйте сделать разные папки, код будет лежать в них одинаковый.


(Ray Romanov) #6

Да и зачем вы трогали Корневую директорию рабочей области?
Там должно быть ${ITEM_ROOTDIR}/workspace
Все параметры должны быть в самих заданиях!!!


(Татьяна Иванова) #7

Да, спасибо, из двух папок работает.


(Татьяна Иванова) #8

Спасибо. Сначала не могла найти, где указать эту директорию в самом Item.