Обзор
Непрерывная доставка – это практика разработки программного обеспечения, когда при любых изменениях в программном коде выполняется автоматическая сборка, тестирование и подготовка к окончательному выпуску. Непрерывная доставка является одним из основополагающих принципов разработки современных приложений, поскольку расширяет практику непрерывной интеграции за счет того, что все изменения кода после стадии сборки развертываются в тестовой и/или в рабочей среде. При правильном внедрении у разработчиков всегда будет готовый к развертыванию собранный экземпляр ПО, прошедший стандартизированную процедуру тестирования.
Непрерывная доставка позволяет разработчикам не только автоматизировать тестирование на уровне модулей, но и выполнять разноплановую проверку обновлений приложений перед тем, как развертывать их для конечных пользователей. Такое тестирование может включать тестирование пользовательского интерфейса, загрузки, интеграции, надежности API и т. д. Все это позволяет разработчикам тщательнее проверять обновления и заблаговременно выявлять возможные проблемы. В отличие от устаревших локальных решений, облачная среда позволяет легко и экономично автоматизировать создание и репликацию нескольких сред тестирования.
Непрерывная доставка и Непрерывное развертывание
При непрерывной доставке каждое изменение программного кода проходит сборку, тестируется и затем отправляется в подготовительную (тестовую или имитационную) среду. Перед развертыванием в рабочей среде можно использовать несколько параллельных стадий тестирования. Отличие непрерывной доставки от непрерывного развертывания заключается в том, что при непрерывной доставке для развертывания обновлений в рабочей среде требуется подтверждение вручную. При непрерывном развертывании это происходит автоматически без специального подтверждения.
Непрерывная доставка автоматизирует весь процесс выпуска ПО. Каждое подтверждение записи версии запускает автоматический процесс сборки, тестирования и размещения обновления. Окончательное решение о развертывании в реальной рабочей среде инициируется разработчиком.
Преимущества непрерывной доставки
Непрерывная доставка на платформе AWS
Подробнее о непрерывной доставке, ее преимуществах и внедрении с помощью сервисов AWS CodePipeline и AWS CodeBuild см. в наших видеоматериалах.