CI/CD — то, ради чего в компании вообще заводят инженера DevOps. Именно здесь встречается всё предыдущее: git даёт события и ревью, Docker — неизменяемый артефакт, IaC — окружения, облако — место выката. Трек отвечает не только на «как написать файл конвейера», но и на вопросы, которые задают на собеседовании: почему артефакт собирают один раз, чем канареечный выкат отличается от сине-зелёного, зачем разделять выкат кода и включение функции, как измерять процесс доставки метриками DORA и почему быстрые команды одновременно и стабильнее.
Git и работа через ветки и pull request (Git и рабочий процесс), терминал и скрипты (Bash/Python), контейнеры (Docker: образ, тег, реестр — артефакт доставки), а также представление об инфраструктуре кодом (IaC: Terraform + Ansible) и облаке (Облако AWS: балансировщик, автоскейл, куда именно катится приложение).
Структура трека
Лучшая литература к треку
- Jez Humble, David Farley — «Continuous Delivery» — книга, задавшая отрасли понятие конвейера развёртывания; из неё принципы «собери один раз» и «продвигай неизменный артефакт».
- Forsgren, Humble, Kim — «Accelerate» и отчёты DORA — исследование связи практик доставки и результатов бизнеса; источник четырёх ключевых метрик.
- Martin Fowler — Continuous Integration, Feature Toggles, BlueGreenDeployment — определения, на которые ссылается вся отрасль.
- Документация GitHub Actions и GitLab CI/CD — первоисточники по синтаксису, кэшу, артефактам и окружениям.
- OpenGitOps (CNCF), документация Argo CD и Flux — принципы GitOps и их реализации.
Заведи учебный репозиторий: бесплатных минут конвейера в GitHub и GitLab хватает с запасом на весь трек. Части, которые не требуют сервиса (порядок шагов, скрипты сборки, хуки, проверка идемпотентности выката), сделаны так, чтобы прогонять их локально в терминале. Главная привычка трека: изменение считается готовым не тогда, когда «работает у меня», а когда его собрал, проверил и упаковал конвейер.