Проверка изменений
Запускать сборку и тесты при изменении кода.
Разберитесь, как автоматизировать сборку, проверки и доставку изменений программы.
Создание CI/CD — настройка последовательности автоматических действий для интеграции изменений и их подготовки или доставки в среду. Оптимизация помогает сделать эту последовательность понятнее и надёжнее.
Запускать сборку и тесты при изменении кода.
Сохранять результат успешной сборки для следующего этапа.
Изучать журнал неуспешного шага и устранять причину.
Сначала определите, как проект собирается и какие проверки можно запустить вручную. Для упражнения используйте отдельный учебный репозиторий и тестовую среду.
Курс GitLab CI/CD: Git, анализ исходного кода, настройка GitLab, пайплайны, реестры и автоматизация развёртывания.
Курс DevOps с нуля: инфраструктура как код, контейнеризация, Kubernetes, CI/CD, безопасность и мониторинг.
Мини-курс ProductStar знакомит с задачами DevOps-инженера, Linux, GitLab CI, Docker, Ansible, SQL и Python. В программе заявлены практические задания и итоговая работа для портфолио.
Мини-курс ProductStar для знакомых с Python разработчиков: серверная разработка на Django, API, базы данных, тестирование и развёртывание проекта.
CI/CD объединяет практики частой интеграции изменений и автоматизации их последующей доставки. В непрерывной интеграции изменения регулярно собирают и проверяют. Дальнейший конвейер может готовить выпуск или развёртывать его; конкретные этапы и необходимость ручного подтверждения определяются проектом.
Например, после изменения кода конвейер может установить зависимости, выполнить тесты и сообщить об ошибке. Важно понимать, какие проверки действительно защищают проект и где хранятся настройки доступа. Быстрый конвейер полезен только тогда, когда он сохраняет необходимые проверки и даёт понятный результат.
Для практики настройте автоматический запуск теста в учебном репозитории, затем намеренно внесите ошибку и найдите её в журнале. Сравнивайте длительность отдельных шагов и устраняйте подтверждённые задержки. Секреты и реальные среды нельзя подставлять в открытые примеры без соответствующей защиты.