6-Developer Tools Flashcards
What is CI/CD?
CI - continuously push code to a shared repository
CD - Continuous Delivery has manual approval before prod; Continuous Deployment goes straight to prod
Where can code for CodeBuild be sourced?
CodeCommit or S3 is versioning is enabled
What targets does CodePipeline support?
On-premises, EC2, Lambda, Elastic Beanstalk, CloudFormation and ECS
What deployment options does CodeDeploy support?
In-place (rolling) - not for Lambda
Blue / green
How are CodeDeploy deployments configured?
With the AppSpec file. It differs if the target is Lambda versus on-prem/EC2
What targets does CodeDeploy support?
On-prem/EC2 and Lambda
What does the AppSpec file for Lambda deployments look like?
It can be in either YAML or JSON. It contains the following fields:
- version - currently 0.0
- resources - the name and properties of the lambda function to deploy
- hooks - other lambda functions to call for “BeforeAllowTraffic” and “AfterAllowTraffic”
What do AppSpec files for on-prem/EC2 deployments look like?
They are written in YAML. and place in the root directory, They have the following fields:
- version
- os
- files
- hooks
What phases are the hooks for on-prem/EC2 deployments divided in to?
Phase I - deregister the instance from the load balancer
Phase II - perform the upgrade
Phase III - re-register the instance
What hooks are in Phase I of on-prem/EC2 deployments ?
- BeforeBlockTraffic
- BlockTraffic
- AfterBlockTraffic
What hooks are in Phase II of on-prem/EC2 deployments ?
- ApplicationStop
- DownloadBundle
- BeforeInstall
- Install
- AfterInstall
- ApplicationStart
- ValidateService
What hooks are in Phase III pf on-prem/EC2 deployments?
- BeforeAllowTraffic
- AllowTraffic
- AfterAllowTraffic
What do the targets of on-prem/EC2 deployments require?
That the CodeDeploy agent is installed
What commands are used for Docker?
- docker build -t [repo]
- docker tag [repo] […ecr_url..]: latest
- docker push […ecr_url]:latest
What are CloudFormation templates written in?
YAML or JSON