Как заставить работать несколько сборок Jenkins из одного локального репозитория git?
У меня большой репозиторий GitHub, содержащий несколько битов, которые можно собрать независимо друг от друга. Если я сконфигурирую Jenkins с заданием (или двумя) для каждого из них, мне придется несколько раз извлекать гигабайты данных (по одному клону репо для каждого задания).
Это занимает как дисковое пространство, так и пропускную способность.
Я хотел бы иметь задание «Обновить локальное хранилище», которое клонирует github один раз, затем настроить каждое из заданий для клонирования себя из этого хранилища и выполнить сборку. Затем, настроив подзадачи в качестве зависимых сборок, я могу запустить «Обновить локальное репо», получить от него все последние данные из GitHub и запустить каждую из сборок.
Пока у меня работает «Обновить локальное хранилище» - он успешно клонируется, и если я перехожу в рабочую область, я вижу, что он имеет коммит HEAD origin / master.
Проблема в других заданиях - они, похоже, не собирают обновления. Вот как я настроил один из них:
Git
Repository URL file:////Users/malcolmbox/.jenkins/jobs/Refresh Local repo/workspace
Branches to build master
Вместо этого обновления до последней фиксации, он застрял на несколько дней в прошлом.
Как я могу заставить его тянуть наконечник и делать правильные вещи?
Чтобы уточнить: ... / Обновить Локальное хранилище / рабочая область имеет фиксацию 6b20268389064590147d5c73d2b6aceb6ba5fe70 отправлено 28/3
Зависимая сборка после запуска сборки (предположительно, выполняющего шаг git clone / pull) извлекается на 79a25992cc192376522bcb634ee0f7eb3033fc7e, отправленной 26/3 - так что это на пару дней позади.