трек

CI/CD

Пайплайны, сборка, выкатка. От git push до прода без ручных шагов.

Основы

01 теория
Что такое CI/CD и зачем

Какую боль решает CI/CD: ручной деплой, «у меня работает», интеграционный ад. Что значат буквы.

10 мин · intro
02 теория
Continuous Integration

Что прогоняется на каждый push, fail fast, зелёный main и почему сливать надо часто.

11 мин · просто
03 теория
Delivery vs Deployment

Две расшифровки CD: непрерывная доставка (релиз кнопкой) и непрерывное развёртывание (автоматом в прод).

10 мин · просто
04 теория
Анатомия пайплайна

Stages, jobs, runners, артефакты, кеш, переменные и секреты, окружения — общий словарь CI/CD.

12 мин · просто
05 теория
Ландшафт инструментов

GitLab CI, GitHub Actions, Jenkins, CircleCI, Argo CD — кто есть кто и чем отличаются.

11 мин · просто
06 теория
Первый пайплайн в GitLab CI

Собираем простой .gitlab-ci.yml с нуля: hello-world, стадии, артефакты, тег по SHA.

12 мин · средне
07 квиз
Квиз: CI/CD

Семь вопросов на CI, Delivery vs Deployment, анатомию пайплайна и инструменты.

6 мин · просто

Практика в GitLab

Десять шагов руками в GitLab: от первого job до сборки в контейнере, кеша, секретов и ручного выката.

01 теория
Свой проект в GitLab: копия учебного репо

Заводим репозиторий, в котором будем гонять пайплайны: клонируем учебный проект, переключаем origin на свой и делаем первый push.

12 мин · intro
02 теория
Первый job: три строки и зелёная галочка

Пишем минимальный .gitlab-ci.yml, пушим и смотрим, как GitLab сам поднимает контейнер и выполняет команду.

10 мин · intro
03 теория
Стадии: порядок работ и остановка на падении

Разбиваем пайплайн на build и test, смотрим, как стадии идут по очереди и почему упавший build отменяет всё, что за ним.

12 мин · просто
04 теория
Артефакты: передать файлы между стадиями

Почему файл из build не виден в test и как artifacts решают эту проблему. Собираем папку public и забираем её из следующей стадии.

12 мин · просто
05 теория
Деплой: сайт в интернете по своему адресу

Добавляем стадию deploy и job pages. GitLab публикует папку public, и сайт открывается по ссылке без единого ручного действия.

12 мин · просто
06 теория
Переменные: контекст пайплайна и секреты

Встроенные CI_-переменные, свои значения в .gitlab-ci.yml и masked-секреты в настройках проекта. Плюс двоеточие, которое ломает YAML.

14 мин · просто
07 теория
Настоящая сборка: свой образ и npm в пайплайне

Меняем echo на реальный сборщик: образ node, npm ci, esbuild и dist в артефактах. Разбираемся, откуда берётся окружение job.

14 мин · просто
08 теория
Кеш: чем он отличается от артефактов

Ускоряем установку зависимостей между прогонами. Ключ по хешу lock-файла и разбор, почему кешировать node_modules при npm ci бессмысленно.

13 мин · средне
09 теория
rules: кто запускается, а кто ждёт кнопку

Разводим выкат по веткам, ставим ручной гейт на прод и разбираемся, почему rules вытеснили only/except.

13 мин · средне
10 теория
Антипаттерны: пять способов сделать пайплайн бесполезным

Зелёный job, который врёт, пароль в логе, latest вместо версии, монолитная задача и мёртвый only. Каждый разобран на живом прогоне.

15 мин · средне

Глубже

01 теория
Идеальный пайплайн: этапы и принципы

Как выглядит правильный CI/CD-пайплайн: порядок этапов, fail-fast, быстрая обратная связь и где проходит граница деплоя.

12 мин · средне
02 теория
Стратегии выката: blue-green, canary, rolling

Как катить новую версию без даунтайма и с возможностью отката: rolling, blue-green и canary, их плюсы и риски.

12 мин · средне
03 теория
Паттерны пайплайнов: gates, approvals, fan-out

Ручные подтверждения, защищённые окружения, параллельные ветки fan-out/fan-in и условный запуск job.

11 мин · средне
04 теория
Кеш и артефакты в пайплайне

Чем кеш отличается от артефакта, как кешировать зависимости и слои образа и как передавать результат между job.

11 мин · средне
05 теория
Безопасность в пайплайне: SAST, SCA, secret-scan

Какие проверки безопасности встраивают в CI, чем они отличаются и почему сканер — процесс, а не один инструмент.

11 мин · средне