CICD: CodeCommit, CodePipeline, CodeDeploy, CodeBuild, CloudFormation Flashcards
AWS CodePipeline Service
- continuous delivery service that helps you automate your release pipelines for application and infrastructure
- comprises a series of stages (build, test, deploy)
- you can add an approval action to stage in a pipeline that points to where you want the pipeline to stop so someone can approve; with the required IAM permissions.
- you can configure this action to publish to an SNS topic
- must have at least 2 stages
CodeDeploy: In-Place Deployment
- the application on each instance in the deploy group is stopped
- the latest application version is installed
- the new version of the application is started and validated
CodeDeploy: Deployment Blue/Green
Blue/Green deployment
- EC2 instances in the original environment are replaced by a different set of instances
- Lambda: traffic is shifted from current serverless environment to one with the updated lambda code
CodeDeploy: Deployment Method
- In-place deployment
- Blue/Green deployment
AWS CodeBuild Service
- Continuous Integration
- compiles source code
- runs test cases
- produces software packages that are ready to deploy
- build specification YML lets you choose the commands to run at each phase of the build process.
- cannot trigger a lambda function directly
CodeCommit: Monitoring
- AWS IAM to control and monitor who can access your data, how, when and where.
- Monitor repositories with CloudTrail and CloudWatch
- Use SNS to receive notifications for events impacting your repositories
CodeCommit: Limits
- 1,000 repository limits
- a single blob cannot be more that 2GB
- total size of files in a single commit have a 20MB max
- individual files should not exceed 6MB
AWS CodeDeploy Service
- Fully Managed deployment service
- automates software deployments to EC2, Fargate, Lambda and on-premises servers
CodeDeploy: Deployment Configuration
- a set of deployment rules and deployment success and failure conditions
CodeDeploy: Deployment Group
- individually tagged instances in EC2 Auto Scaling Group.
CodeDeploy: Deployment Lifecycle Events
- ApplicationStop
- DownloadBundle
- BeforeInstall
- Install
- AfterInstall
- ApplicationStart
- ValidateService
CodePipeline: Revision
A change made to the source location defined fo your pipeline
It can include source code, build output, configuration or data.
CodePipeline: Stage
A group of one or more actions.
A pipeline can have two or more stages.
CodePipeline: Action
A task perform on a revision.
Pipeline actions occur in a specified order.
6 Types of actions:
- Source
- Build
- Test
- Deploy
- Approval
- Invoke
CodePipeline: Limits
- Max number of total pipelines per region is 300
- Stage: min 2 max 10