Правка иконки в общем пакете запускает сборку всех шести приложений на 40 минут
В монорепозитории шесть фронтенд-приложений и пакет ui. CI на каждый пулреквест собирает и тестирует всё целиком — 40 минут, даже если поменялся README одного приложения. Разработчики копят изменения в огромные пулреквесты, чтобы реже ждать.
Что даст основной выигрыш?
- Собирать только затронутые пакеты по графу зависимостей и кэшировать результаты
- Разнести шесть приложений по отдельным репозиториям с копиями пакета ui
- Запускать CI только перед релизом, а не на каждый пулреквест
- Отключить тесты для изменений в пакете ui
