An online education platform deploys a Java application to an EC2 Auto Scaling fleet. Code lives in CodeCommit, builds need compilation and unit tests, production needs blue/green deployment with automatic rollback on CloudWatch alarms, and managers require an explicit approval before production release. Audit history is required. Which CI/CD pipeline orchestration design using CodePipeline, CodeBuild, and CodeDeploy meets these release requirements?
Select an answer to reveal the explanation.
Short Explanation
You’ve got a strong release flow: blue/green deployment lets you compile and test, pause for manager approval, and shift traffic with alarm-triggered rollback ready. That gives you both a clear human checkpoint and a safer production release.
Full Explanation
The CodePipeline design from CodeCommit through CodeBuild and CodeDeploy meets the requirements: CodePipeline stages the release and retains execution history, CodeBuild compiles the Java application and runs unit tests, and CodeDeploy uses blue/green deployment for the EC2 Auto Scaling fleet. CloudWatch alarms can trigger automatic rollback if health regresses, while a manual approval action ensures managers explicitly approve the production release. Compiling and packaging without running unit tests omits the required validation gate, allowing defective code to proceed. A rolling deployment updates the existing fleet in place rather than creating a parallel green environment for traffic shifting and rapid reversion, so it does not provide the requested blue/green strategy. Blue/green deployment with automatic promotion after tests pass supports technical automation but fails the governance requirement because it lacks explicit manager approval. Exam caveat: distinguish CodeDeploy deployment types and CodePipeline approval actions from CloudWatch alarm rollback triggers; they address deployment strategy, governance, and technical safety, respectively. Practical check: confirm execution history includes unit-test reports, blue/green deployment records, linked alarms, and approval timestamps before production traffic shifts.