Вопрос: Что такое непрерывная доставка?

Непрерывная доставка – это практика разработки программного обеспечения, когда при любых изменениях в программном коде выполняется автоматическая сборка, тестирование и подготовка к окончательному выпуску. Внедрить практику непрерывной доставки помогает сервис AWS CodePipeline. Подробнее см. на странице Непрерывная доставка.

Вопрос: Что такое непрерывная интеграция?

Непрерывная интеграция – это практика разработки ПО, при которой разработчики регулярно объединяют изменения программного кода в центральном репозитории, после чего автоматически выполняется сборка и тестирование. Понятие непрерывной интеграции чаще всего применяется к стадии сборки или интеграции процесса выпуска ПО и включает в себя как компонент автоматизации (например, сервис непрерывной интеграции или сборки), так и компонент культуры разработки (например, обучение частой интеграции). Главная задача непрерывной интеграции – быстрее находить и исправлять ошибки, улучшать качество ПО и сокращать временные затраты на проверку и выпуск новых обновлений ПО. Подробнее см. на странице Непрерывная интеграция.

Вопрос: Что представляет собой AWS CodePipeline?

AWS CodePipeline – это сервис непрерывной доставки, который позволяет моделировать, визуализировать и автоматизировать действия, необходимые для выпуска программного обеспечения. С помощью AWS CodePipeline вы моделируете весь процесс выпуска, от сборки кода, развертывания в промежуточной среде, тестирования приложения и до запуска его в рабочей среде. После этого AWS CodePipeline при каждом изменении кода выполняет сборку, тестирование и развертывание вашего приложения в соответствии с определенным рабочим процессом. На любой стадии процесса выпуска можно включить интеграцию с инструментами партнеров и своими собственными, чтобы сформировать комплексное решение непрерывной доставки.

Вопрос: Почему следует использовать AWS CodePipeline для настройки конвейера непрерывной доставки?

Автоматизируя процессы сборки, тестирования и выпуска, AWS CodePipeline позволяет увеличить скорость и качество ваших обновлений программного обеспечения, пропуская все изменения через ряд последовательных проверок качества.

Вопрос: Какие продукты можно интегрировать с конвейером непрерывной доставки, созданным с помощью AWS CodePipeline?

AWS CodePipeline интегрирован с такими сервисами AWS, как AWS CodeCommit, Amazon S3, AWS CodeDeploy, AWS Elastic Beanstalk, AWS OpsWorks и AWS Lambda. Кроме того, AWS CodePipeline интегрируется с рядом партнерских инструментов. Дополнительные сведения см. на странице интеграции продукта. Наконец, можно написать свои настраиваемые действия и интегрировать любой существующий инструмент с AWS CodePipeline. Более подробные сведения см. в разделе Создание и добавление собственных действий в AWS CodePipeline руководства пользователя по AWS CodePipeline.

Вопрос: Можно ли использовать AWS Identity and Access Management (IAM) для управления доступом к AWS CodePipeline?

Да. AWS CodePipeline поддерживает разрешения на уровне ресурсов. Можно указать пользователей, которые имеют доступ к конвейеру, а также действия, которые они могут выполнять. К примеру, можно предоставить пользователям доступ к конвейеру в режиме «только чтение», если вы хотите, чтобы они могли просматривать состояние конвейера, но не могли изменять его. Кроме того, можно установить разрешения для любой стадии и действия внутри конвейера. Дополнительную информацию об использовании IAM с AWS CodePipeline см. в справке по правам доступа.

Вопрос: Можно ли разрешить доступ к конвейеру, находящемуся в одном аккаунте AWS, пользователю IAM из другого аккаунта AWS?

Да. Вы можете создать роль IAM в аккаунте AWS, которому принадлежит конвейер, для делегирования прав доступа к конвейеру и любым связанным с ним ресурсам пользователю IAM из другого аккаунта. Сведения по этому вопросу см. в учебных пособиях Делегирование прав доступа к нескольким своим аккаунтам AWS, используя роли IAM и Настройка доступа к конвейеру из нескольких аккаунтов.

Вопрос: Есть ли способ быстрого тестирования конвейера без того, чтобы выполнять весь процесс настройки?

Можно использовать наш стартовый набор для создания конвейера, который автоматически выделяет конвейер с четырьмя стадиями без необходимости настраивать его самостоятельно. Стадии конвейера включают стадию исходного кода, стадию сборки Jenkins, стадию развертывания в промежуточной среде и стадию развертывания в рабочей среде.

Вопрос: Что делать, если есть еще вопросы по AWS CodePipeline?

Посетите страницу вопросов и ответов по CodePipeline.

Начать работу с руководством по внедрению