Concepts
CI/CD означает Continuous Integration и Continuous Deployment (или Continuous Delivery), которые являются ключевыми практиками в современной разработке программного обеспечения и DevOps.
Continuous Integration
Инструменты CI необходимы для автоматизации процесса интеграции изменений кода от нескольких участников в общий репозиторий. Эти инструменты помогают автоматизировать сборку, тестирование и проверку изменений кода, гарантируя, что кодовая база всегда находится в стабильном состоянии.
Continuous Deployment
Continuous Deployment — это практика, когда абсолютно все этапы конвейера (сборка, тестирование, деплой) - автоматизированы. Любое изменение кода, прошедшее автоматизированные тесты, автоматически внедряется в продакшн. Это позволяет быстро выкатывать фичи/фиксы, но требует высокого уровня уверенности в автоматизированных процессах тестирования и мониторинга, чтобы гарантировать, что в продакшн попадает только высококачественный код.
Continuous Delivery
Continuous Delivery — это практика, когда все этапы конвейера, включая сборку, тестирование и подготовку к деплою в продакшн - автоматизированы. Однако деплой в продакшн выполняется вручную, предоставляя командам возможность просматривать и утверждать изменения до их запуска в эксплуатацию.