Монорепозитории позволяют размещать код нескольких приложений в одном репозитории GitLab.
Для использования возможностей CI/CD GitLab в монорепозитории требуются отдельные конфигурации конвейера для каждого приложения.
Ранее для включения YAML-файлов на основе изменений в каталоге требовалось обходное решение, включающее скрытые и расширенные задачи.
В GitLab 16.4 представлено "включить с правилами: изменения" для конвейеров, позволяющее условное включение файлов конвейера на основе изменений каталога.
Это позволяет отделить конвейеры и запускать их только при внесении изменений в исходный код определенного приложения.
Настройка конвейера на уровне проекта запускает соответствующий конвейер на основе обнаруженных изменений.
Файл конвейера каждого приложения предназначен для сборки и тестирования его кода без необходимости в расширениях задач.
Правило "изменения" принимает значение "истина" при добавлении новых ветвей или тегов, что потенциально может запустить все включенные задачи.
Чтобы смягчить это, сначала должны создаваться рабочие ветви, а запросы на объединение использоваться для разработки.
Монорепозитории в сочетании с CI/CD GitLab предлагают эффективный подход к управлению несколькими приложениями.
Чтобы изучить монорепозитории, доступна бесплатная пробная версия GitLab Ultimate.
about.gitlab.com
Building a GitLab CI/CD pipeline for a monorepo the easy way
Create attached notes ...
