Deployment
This domain covers how to package, release, and automate deployments with AWS developer tools and infrastructure as code, including safe deployment strategies that limit blast radius.
CI/CD with the code services
AWS CodePipeline orchestrates stages, CodeBuild compiles and tests, and CodeDeploy releases to compute targets. A buildspec.yml file defines CodeBuild phases and artifacts, while an appspec file tells CodeDeploy how to deploy and run lifecycle hooks. Store source in CodeCommit, GitHub, or S3.
Infrastructure as code
AWS CloudFormation provisions resources from declarative templates, and the AWS SAM extension simplifies serverless definitions for Lambda, API Gateway, and DynamoDB. SAM transforms shorthand into full CloudFormation and supports local testing with the SAM CLI. Treat templates as versioned code so environments are reproducible.
Safe deployment strategies
Reduce risk with canary or linear traffic shifting. Lambda aliases with weighted versions and CodeDeploy deployment configurations move a small percentage of traffic first, then roll forward or automatically roll back on CloudWatch alarms. Blue/green deployments run a new environment alongside the old and switch over when healthy.
Versioning and rollback
Publish immutable Lambda versions and point a stable alias at them so you can roll back by moving the alias. Keep deployment artifacts in S3 with versioning enabled. Automated rollback triggered by alarms is safer than manual intervention during an incident.