Pull to refresh
8K+
5

User

2
Rating
1
Subscribers
Habr CareerHabr Career
Send message

Не переписывая пайплайны: переезд с include на GitLab CI Components

Level of difficultyMedium
Reading time18 min
Reach and readers7.9K

Переезд с include на GitLab CI Components: у модуля появляется объявленный spec: inputs с типами и дефолтами, а опечатка в имени input роняет пайплайн до старта…

Как переезжали

Как мы перестали копировать .gitlab-ci.yml и спасли пайплайны от хаоса с помощью модулей

Level of difficultyMedium
Reading time23 min
Reach and readers10K

Копипаст .gitlab-ci.yml по десяткам сервисов привел к config drift: пайплайны расходились, а правка одной строчки требовала 10+ MR. Вынесли логику CI в отдельный репозиторий модулей, подключаемых через include с версионированием по SemVer — в проекте остается только короткий файл с переменными. В итоге миграция с Kaniko на BuildKit заняла 5 дней вместо 2-3 недель, а типовой багфикс на 20 сервисах — 1 час вместо 11.

Смотреть, как устроены модули ->

Information

Rating
1,662-nd
Registered
Activity

Specialization

DevOps-инженер
Средний
From 350,000 ₽
Kubernetes
Высоконагруженные системы
CI/CD
Базы данных