{1/2} Подходы для отладки пайплайнов
Сейчас будет лонгрид, на две части, так что соберитесь!
Как только я сел писать данный пост, я понял один прекол. Все мои best practices работают только для GitLab CI и GitHub Actions. Для остальных систем эти советы могут быть не особо актуальны.
В GitLab CI и GitHub Actions конфигурация пайплайнов хранится в репозитории вместе с основным кодом. Это дает плюсы вроде: версионирования, коллаборации, документированности и того, что вся конфигурация находится в одном месте. Минусы же такого подхода в том, что ты не можешь протестировать пайплайн, не смержив новые изменения.
На примере: у тебя есть Job с билдом и Job с тестами. Job с билдом работает хорошо и стабильно, а Job с тестами ты пытаешься настроить. В CI системах у тебя нет возможности изменять Job с тестами, используя результаты из Job с билдом. Для проверки правильности твоих изменений тебе нужно запускать весь пайплайн, и это главная проблема в их отладке.
Помимо этого, если в вашем проекте работает много людей, у вас постоянно будут ситуации, когда у половины уже новые отлаженные пайплайны, а у второй половины еще старая версия, которая может уже не работать.
Следовательно все советы по отладке будут направлены на то, чтобы сгладить эти две основные проблемы. Погнали.
Post #459
2K

- 🔥 9