У нас есть более 50 пакетов Gitlab, где это необходимо. То, что мы делали, это выдвигали коммит в нисходящий пакет, ожидали завершения CI, затем выдвигали еще один коммит в апстримовый пакет, ждали завершения CI и т. Д. Это было очень много времени.
Другая вещь, которую вы можете сделать, - это запуск сборок вручную, и вы можете вручную определить порядок.
Если ничего из этого не работает для вас или вы хотите лучшего способа, я разработал инструмент, который поможет сделать это, называется Gitlab Pipes . Я использовал его внутри в течение многих месяцев и понял, что людям нужно что-то подобное, поэтому я сделал работу, чтобы сделать это публичным.
По сути, он слушает уведомления Gitlab и, когда видит фиксацию пакета, читает файл .gitlab-pipes.yml
, чтобы определить зависимости проектов. Он сможет построить граф зависимостей ваших проектов и создать пакеты для потребителей при последующих коммитах.
Документация здесь , она как бы говорит вам, как она работает. И тогда основной веб-сайт приложения находится здесь.