Domain 3: Deployment (24% of the exam content) - AWS Certification

Domain 3: Deployment (24% of the exam content)

This domain accounts for 24% of the exam content.

Task 1: Prepare application artifacts to be deployed to

Knowledge of:

  • Ways to access application configuration data (for example, AppConfig, Secrets Manager, Parameter Store)

  • Lambda deployment packaging, layers, and configuration options

  • Git-based version control tools (for example, Git)

  • Container images

Skills in:

  • Managing the dependencies of the code module (for example, environment variables, configuration files, container images) within the package

  • Organizing files and a directory structure for application deployment

  • Using code repositories in deployment environments

  • Applying application requirements for resources (for example, memory, cores)

Task 2: Test applications in development environments

Knowledge of:

  • Features in services that perform application deployment

  • Integration testing that uses mock endpoints

  • Lambda versions and aliases

Skills in:

  • Testing deployed code by using services and tools

  • Performing mock integration for APIs and resolving integration dependencies

  • Testing applications by using development endpoints (for example, configuring stages in Amazon API Gateway)

  • Deploying application stack updates to existing environments (for example, deploying an SAM template to a different staging environment)

Task 3: Automate deployment testing

Knowledge of:

  • API Gateway stages

  • Branches and actions in the continuous integration and continuous delivery (CI/CD) workflow

  • Automated software testing (for example, unit testing, mock testing)

Skills in:

  • Creating application test events (for example, JSON payloads for testing Lambda, API Gateway, SAM resources)

  • Deploying API resources to various environments

  • Creating application environments that use approved versions for integration testing (for example, Lambda aliases, container image tags, Amplify branches, Copilot environments)

  • Implementing and deploying infrastructure as code (IaC) templates (for example, SAM templates, CloudFormation templates)

  • Managing environments in individual services (for example, differentiating between development, test, and production in API Gateway)

Task 4: Deploy code by using CI/CD services

Knowledge of:

  • Git-based version control tools (for example, Git)

  • Manual and automated approvals in CodePipeline

  • Access application configurations from AppConfig and Secrets Manager

  • CI/CD workflows that use services

  • Application deployment that uses services and tools (for example, CloudFormation, Cloud Development Kit [ CDK], SAM, CodeArtifact, Copilot, Amplify, Lambda)

  • Lambda deployment packaging options

  • API Gateway stages and custom domains

  • Deployment strategies (for example, canary, blue/green, rolling)

Skills in:

  • Updating existing IaC templates (for example, SAM templates, CloudFormation templates)

  • Managing application environments by using services

  • Deploying an application version by using deployment strategies

  • Committing code to a repository to invoke build, test, and deployment actions

  • Using orchestrated workflows to deploy code to different environments

  • Performing application rollbacks by using existing deployment strategies

  • Using labels and branches for version and release management

  • Using existing runtime configurations to create dynamic deployments (for example, using staging variables from API Gateway in Lambda functions)