Ci/CD CodeStar, CodeArtifact, CodeGury, Cloud9 Flashcards
Для чего нужен CodeStar?
- Единый UI Dashboard для обзора всех наших
CodeCommit
,CodeBuild
,CodeDeploy
,CodePipeline
,CloudFormation
,CloudWatch
- Унифицированный комбинированный UI
- Предопределённые Ci/CD (”пресеты”) для
EC2
,Lambda
,Elastic Beanstalk
- Интеграция с
Jira
,Github Issues
Каков прайсинг CodeStar?
CodeStar сам по себе бесплатный сервис.
Платим мы только за underlying сервисы.
Для чего нужен CodeArtifact? Что он умеет делать?
Как можно обходиться без него?
Для управления зависимостями (dependencies, packages)
- Хранить (разные версии) dependencies
- Предоставлять dependencies
- разработчику
- и сервису CodeBuild
Вместо CodeArtifact можно использовать Public 3-rd party artifact систему,
например Public Maven Repository или Public NPM Repository
В чём преимущество CodeArtifact перед другими средствами?
то же самое, что Public Maven Repository , но являясь приватным (развёрнутым в рамках нашей VPC).
Можно даже стягивать публично доступные dependencies себе в приватный CodeArtifact (это называется “upstream repository”)
В целях независимости и дальнейшей работы в рамках приватной сети.
Какие варианты есть для хранения своих зависимостей? Как каждый из них связан с VPC?
Есть 3 варианта, как хранить свои dependencies
- CodeArtifact
- находится в рамках нашей VPC
- Public 3-rd party artifact система - находится ВНЕ нашей VPC
- собственная система, развёрнутая в наших EC2 instance’ах - находится в рамках нашей VPC
Как можно организовать автоматическое обновление приложения?
Через связку CodeArtifact
+ EventBridge
+ CodePipeline
-
CodeArtifact
получает новую версию какого-то пакета (dependency) -
CodeArtifact
отправляет event в EventBridge -
EventBridge
вызываетCodePipeline
-
CodePipeline
(используя Ci/CD сервисы) выполняет обновление приложения.
На что подразделяется CodeArtifact?
Как это связано с правами доступа?
-
CodeArtifact
делится на репозитории - Каждый
Repository
имеет какой-то домен (Domain
) - Как обычно, можно дать Cross Account доступ к
CodeArtifact
,
прикрепив Resource Policy кCodeArtifact
- НЕТ возможности указать конкретные пакеты в
CodeArtifact
репозитории- или разрешаем читать ВСЕ пакеты в
CodeArtifact
репозитории - или НЕ разрешаем НИКАКИЕ
- или разрешаем читать ВСЕ пакеты в
Зачем нужен CodeGury?
Как он устроен?
Machine Learning powered сервис для
- автоматических code review (
CodeGury
Reviewer) - автоматических performance рекомендаций (
CodeGury
Profiler)
Поддерживает ли CodeGury On-Premise сервера?
Что для этого нужно?
Поддерживает AWS и On-premise приложения.
Как обычно, нужно установить CodeGury Profiler агента на сервер.
Какие настройки агента CodeGury бывают?
-
MaxStackDepth
- глубина stack-trace’а, на которую погружается CodeGury агент.
Например, метод-1 вызывает метод-2, который вызывает метод-3 и т.п. -
MemoryUsageLimitPercent
- сколько памяти выделяем агенту -
ReportingIntervalMilliseconds
- как часто агент должен слать отчёты о прозводительности -
SamplingIntervalMilliseconds
- уменьшаем этот интервал, чтобы увеличить подробность отладки
Что такое Cloud9?
Какие функции она поддерживает?
Cloud9
- это IDE, разработанная AWS’ом.
- Работает прямо в браузере
- Есть терминал CLI, подсветка синтаксиса, debugger
- Можно делать парное-программирование, share code with a team
- Интеграция с SAM и Lambda