Возможности AWS CodeCommit

Почему именно CodeCommit?

AWS CodeCommit – это высокомасштабируемый управляемый сервис для управления исходным кодом с хостингом частных репозиториев Git. Для работы необходимо создать репозиторий, чтобы хранить код. При этом не потребуется выделять и масштабировать оборудование, устанавливать и настраивать программное обеспечение и управлять им. Благодаря CodeCommit можно работать с кодом вместе с другими членами команды, используя запросы на проверку кода, ветвление и слияние. Можно внедрить рабочие процессы, по умолчанию включающие проверку кода и комментирование, а также управлять разрешениями на внесение изменений в определенные ветви.

Общие вопросы

CodeCommit предназначен для совместной разработки программного обеспечения. Он позволяет подтверждать код, создавать ветви и выполнять слияние, что обеспечивает простое управление проектами при командной работе. Помимо этого, CodeCommit поддерживает пул‑реквесты как механизм отправки запроса на проверку и обсуждение кода с коллегами. Репозиторий можно создать с помощью Консоли управления AWS, Интерфейса командной строки AWS (AWS CLI) или AWS SDK, а начать работу – с помощью Git.

Обмен файлами с CodeCommit можно осуществлять по протоколам HTTPS или SSH. При хранении репозитории автоматически шифруются сервисом управления ключами AWS (AWS KMS). Для этого шифрования вы можете использовать управляемый ключ AWS или создать и применить собственный ключ, управляемый клиентом.

CodeCommit использует Управление идентификацией и доступом AWS (IAM) для контроля и мониторинга доступа к вашим данным (как, когда и где пользователи могут получить к ним доступ). CodeCommit также помогает осуществлять мониторинг репозиториев с помощью сервисов AWS CloudTrail и AWS CloudWatch.

CodeCommit хранит ваши репозитории в Amazon Simple Storage Service (Amazon S3) и Amazon DynamoDB.  Зашифрованные данные хранятся в нескольких ЦОД с обеспечением избыточности. Такая архитектура повышает доступность и сохранность данных в ваших репозиториях.

CodeCommit по умолчанию позволяет создавать до 5000 репозиториев, а дополнительно – до 25 000 репозиториев по запросу. Вместе с кодом можно хранить любые типы файлов, в том числе ресурсы приложений, такие как изображения и библиотеки, а также управлять их версиями. Нужные репозитории с легкостью создаются, когда требуются, а после выполнения задачи удаляются.

Управлять репозиториями можно с помощью консоли, командной строки AWS и AWS SDK. Для работы с файлами исходного кода в репозитории можно также использовать команды или графические инструменты Git. CodeCommit поддерживает все команды Git, а также работает с существующими инструментами Git. Сервис можно интегрировать со своими подключаемыми модулями среды разработки или системами непрерывной интеграции и доставки (CI/CD).

Можно получать оповещения для событий, влияющих на репозитории. Оповещения будут поступать в форме уведомлений Amazon Simple Notification Service (Amazon SNS). Каждое оповещение будет включать в себя сообщение о состоянии, а также ссылку на ресурсы, где возникло событие, ставшее причиной оповещения. Кроме того, используя триггеры репозитория CodeCommit, можно отправлять оповещения и создавать объекты webhook на базе HTTP‑запросов с применением Amazon SNS или вызывать функции AWS Lambda в ответ на выбранные события в репозитории.