AWS Certified Developer – Associate (DVA-C02) — Question 467
A company offers a business-to-business software service that runs on dedicated infrastructure deployed in each customer’s AWS account. Before a feature release, the company needs to run integration tests on real AWS test infrastructure. The test infrastructure consists of Amazon EC2 instances and an Amazon RDS database.
A developer must set up a continuous delivery process that will provision the test infrastructure across the different AWS accounts. The developer then must run the integration tests.
Which solution will meet these requirements with the LEAST administrative effort?
Answer options
- A. Use AWS CodeDeploy with AWS CloudFormation StackSets to deploy the infrastructure. Use Amazon CodeGuru to run the tests.
- B. Use AWS CodePipeline with AWS CloudFormation StackSets to deploy the infrastructure. Use AWS CodeBuild to run the tests.
- C. Use AWS CodePipeline with AWS CloudFormation change sets to deploy the infrastructure. Use a CloudFormation custom resource to run the tests.
- D. Use AWS Serverless Application Model (AWS SAM) templates with AWS CloudFormation change sets to deploy the infrastructure. Use AWS CodeDeploy to run the tests.
Correct answer: B
Explanation
AWS CloudFormation StackSets is the native and most efficient service for deploying infrastructure across multiple AWS accounts simultaneously from a central pipeline. AWS CodePipeline can orchestrate the entire workflow, while AWS CodeBuild is the ideal tool to run the required integration tests. Other tools like Amazon CodeGuru or AWS CodeDeploy are not designed for running general integration tests or provisioning multi-account infrastructure.