AWS Certified DevOps Engineer - Professional

AWS Certified DevOps Engineer - Professional

Get started today

Ultimate access to all questions.


A company operates an application on Amazon EC2 instances managed by AWS CloudFormation stacks. The current update process involves a developer building and testing the application locally, then uploading the build output and CloudFormation templates to Amazon S3. Peer reviews precede the CloudFormation stack update and application installation on EC2 instances. This manual process is error-prone and time-consuming. The company seeks to automate the deployment process as much as possible while ensuring a final manual approval step before any changes to the application or resources. The application's source code and CloudFormation templates are stored in AWS CodeCommit, and an AWS CodeBuild project is in place for application building and testing. What steps should the company implement to achieve these automation goals while maintaining the necessary manual approval?





Explanation:

Option A involves creating an application group and a deployment group in AWS CodeDeploy and installing the CodeDeploy agent on the EC2 instances. This sets up the environment for using AWS CodeDeploy for application deployments. CodeDeploy uses an agent installed on the EC2 instances to perform deployment tasks. Option D uses AWS CodePipeline to orchestrate the deployment process. CodeBuild is invoked to build and test the application, and CloudFormation change sets are created for the infrastructure updates. A manual approval step is included before applying changes. After approval, the CloudFormation change sets are applied, and CodeDeploy is invoked to deploy the new version of the application. Together, these steps automate the deployment process while preserving the manual approval step.