An application team maintains three environments for its application: development, pre-production, and production. The team recently adopted AWS CodePipeline. However, several deployments of misconfigured or nonfunctional development code have reached the production environment, causing user disruption and downtime. The DevOps engineer must review the pipeline and add steps to detect application problems before deployment.
What should the engineer do to identify functional issues during the deployment process?
Choose two A Use Amazon Inspector to add a test action to the pipeline. Use the Amazon Inspector Runtime Behavior Analysis Inspector rules package to check that the deployed code complies with company security standards before deploying it to production. B Using AWS CodeBuild to add a test action to the pipeline to replicate common user activities and ensure that the results are as expected before progressing to production deployment. C Create an AWS CodeDeploy action in the pipeline with a deployment configuration that automatically deploys the application code to a limited number of instances. The action then pauses the deployment so that the QA team can review the application functionality. When the review is complete, CodeDeploy resumes and deploys the application to the remaining production Amazon EC2 instances. D After the deployment process is complete, run a testing activity on an Amazon EC2 instance in a different region that accesses the application to simulate user behavior. If unexpected results occur the testing activity sends a warning to an Amazon SNS topic. Subscribe to the topic to get updates. E Add an AWS CodeDeploy action in the pipeline to deploy the latest version of the development code to pre-production Add a manual approval action in the pipeline so that the QA team can test and confirm the expected functionality. After the manual approval action, add a second CodeDeploy action that deploys the approved code to the production environment. Show Answer Answer Explanation AWS CodeBuild can run commands defined in a buildspec as a CodePipeline test action, enabling automated tests that simulate common user activities and fail the pipeline when results are unexpected. A CodeDeploy deployment to pre-production followed by a CodePipeline manual approval action gives QA a controlled opportunity to validate the deployed application; the pipeline proceeds to the production CodeDeploy action only after approval. CodePipeline documentation describes this staging-test, manual-approval, and production-deployment pattern.
Learn more
Community Discussion