Я сконструировал проект с несколькими каналами в Дженкинсе. Этот проект запускает интеграционный тест во всех моих ветвях функций (git). Для каждого задания в проекте конвейера он создает экземпляр моего webapp (start tomcat и других зависимостей). Из-за проблем с привязкой к порту это приводит к множеству сломанных заданий.Как выполнить задания в многоканальном проекте последовательно, а не параллельно
Могу ли я сжимать сборки в проекте с многоканальным конвейером, чтобы задания для каждой ветки функций выполнялись последовательно, а не параллельно?
Или если есть более элегантное решение?
Edit: ситуации и проблема:
- Я хочу иметь многоотраслевой проект трубопровода в Дженкинс (потому что у меня есть много ветвей функций в мерзавце)
- рабочих мест, которые созданы из (для каждой ветви функций в git), параллельно выполняются
- Опрос scm в полночь (фиксация по ветвям x является новой, поэтому соответствующие задания начинаются с полночь)
- каждая работа началась один экземпляр моего веб-приложение (и других зависимостей), которые связываются с некоторыми портами
Проблема заключается в том, что можно начинать многие из этих рабочих мест в полночь. Каждая работа будет пытаться запустить экземпляр моего webapp. Первое задание может запустить webapp без каких-либо проблем. Второе задание не может запустить webapp, поскольку порты уже взяты из первого экземпляра.
Я не хочу настраивать привязку нового порта для каждой ветки функции в моем репозитории git. Мне нужно решение для дросселирования сборки в многоблочном конвейере, так что только на «функции» можно запускать одновременно.