Непрерывная доставка (Continuous Delivery, CD) — это подход к разработке программного обеспечения, при котором продукт всегда находится в состоянии, готовом к развертыванию. Каждый коммит автоматически проходит через конвейер сборки, автоматические тесты, проверку качества и доставляется в промежуточную среду, где команда может безопасно принимать решение о выпуске. Главная цель CD —
делать выпуск (релиз) быстрым, предсказуемым и безопасным.
CD часто путают с двумя близкими практиками, но у них есть четкие различия:
- Continuous Integration (CI — непрерывная интеграция) отвечает за то, чтобы разработчики регулярно интегрировали исходный код в общий репозиторий (GitHub, GitLab, Bitbucket). После каждого коммита запускаются автоматические проверки, сборка и тестирование, что помогает выявлять ошибки на ранних этапах.
- Continuous Deployment (непрерывное развертывание) — это следующий шаг после CD: изменения автоматически доставляются не только в промежуточную среду, но и сразу в рабочую среду без ручного подтверждения.
Таким образом:
- CI → проверяет код
- CD → готовит релиз и делает его безопасным
- Continuous Deployment → автоматически выкладывает обновление пользователям
Непрерывная доставка и непрерывное развертывание формируются в полноценные
конвейеры непрерывной поставки, которые автоматизируют сборки и тестирование, удаляют ручные этапы, сокращают цикл разработки и позволяют выпускать новую функциональность и исправления ошибок хоть несколько раз в день. Именно поэтому CD стало ключевым элементом современного DevOps-подхода и основой гибких продуктовых команд.