Content Domain 3: Deployment
Tasks
Task 1: Prepare application artifacts to be deployed to AWS
Skill 3.1.1: Manage the dependencies of the code module (for example, environment variables, configuration files, container images) within the package
Skill 3.1.2: Organize files and a directory structure for application deployment
Skill 3.1.3: Use code repositories in deployment environments
Skill 3.1.4: Apply application requirements for resources (for example, memory, cores)
Skill 3.1.5: Prepare application configurations for specific environments (for example, by using AWS AppConfig)
Task 2: Test applications in development environments
Skill 3.2.1: Test deployed code by using AWS services and tools
Skill 3.2.2: Write integration tests and mock APIs for external dependencies
Skill 3.2.3: Test applications by using development endpoints (for example, configuring stages in Amazon API Gateway)
Skill 3.2.4: Deploy application stack updates to existing environments (for example, deploying an AWS SAM template to a different staging environment)
Skill 3.2.5: Test event-driven applications
Task 3: Automate deployment testing
Skill 3.3.1: Create application test events (for example, JSON payloads for testing AWS Lambda, API Gateway, AWS SAM resources)
Skill 3.3.2: Deploy API resources to various environments
Skill 3.3.3: Create application environments that use approved versions for integration testing (for example, Lambda aliases, container image tags, AWS Amplify branches, AWS Copilot environments)
Skill 3.3.4: Implement and deploy infrastructure as code (IaC) templates (for example, AWS SAM templates, AWS CloudFormation templates)
Skill 3.3.5: Manage environments in individual AWS services (for example, differentiating between development, test, and production in API Gateway)
Skill 3.3.6: Use Amazon Q Developer to generate automated tests
Task 4: Deploy code by using AWS Continuous Integration and Continuous Delivery (CI/CD) services
Skill 3.4.1: Describe Lambda deployment packaging options
Skill 3.4.2: Describe API Gateway stages and custom domains
Skill 3.4.3: Update existing IaC templates (for example, AWS SAM templates, CloudFormation templates)
Skill 3.4.4: Manage application environments by using AWS services
Skill 3.4.5: Deploy an application version by using deployment strategies
Skill 3.4.6: Commit code to a repository to invoke build, test, and deployment actions
Skill 3.4.7: Use orchestrated workflows to deploy code to different environments
Skill 3.4.8: Perform application rollbacks by using existing deployment strategies
Skill 3.4.9: Use labels and branches for version and release management
Skill 3.4.10: Use existing runtime configurations to create dynamic deployments (for example, using staging variables from API Gateway in Lambda functions)
Skill 3.4.11: Configure deployment strategies (for example, blue/green, canary, rolling) for application releases