Jenkins (Hudson) - Управление зависимостями между параллельными сборками

Используя Jenkins или Hudson, я хотел бы создать конвейер сборок с точками разветвления и соединения, например:

     job A
    /      \
 job B    job C
   |        |
 job D      |
    \      /
     job E

Я хотел бы создать произвольные последовательно-параллельные графы , подобные этому, и оставьте Дженкинсу свободу планирования для параллельного выполнения B / D и C, когда доступно ведомое устройство.

Плагин Присоединиться немедленно присоединяется после выполнения B. Плагин Build Pipeline не поддерживает точки разветвления / соединения. Не уверен, что это возможно с плагином Throttle Concurrent Builds (или устаревшим плагином Locks & Latches); если так, я не мог понять, как это сделать. Одним из решений может быть указание зависимостей сборки с Apache Ivy и использование подключаемого модуля Ivy. Тем не менее, все мои задания - это задания сценария Makefile C / C ++ / оболочки, и у меня нет опыта работы с Ivy, чтобы проверить, возможно ли это.

Как лучше всего указать параллельные задания и их зависимости в Jenkins?

5
задан Martijn Rutten 29 January 2012 в 14:57
поделиться