Which solution will meet these requirements?
Use GitHub websockets to trigger the CodePipeline pipeline. Use the Jenkins plugin for AWS CodeBuild to conduct unit testing. Send alerts to an Amazon SNS topic for any bad builds. Deploy in an in-place, all-at-once deployment configuration using AWS CodeDeploy.
Use GitHub webhooks to trigger the CodePipeline pipeline. Use the Jenkins plugin for AWS CodeBuild to conduct unit testing. Send alerts to an Amazon SNS topic for any bad builds. Deploy in a blue/green deployment using AWS CodeDeploy.
Use GitHub websockets to trigger the CodePipeline pipeline. Use AWS X-Ray for unit testing and static code analysis. Send alerts to an Amazon SNS topic for any bad builds. Deploy in a blue/green deployment using AWS CodeDeploy.
Use GitHub webhooks to trigger the CodePipeline pipeline. Use AWS X-Ray for unit testing and static code analysis. Send alerts to an Amazon SNS topic for any bad builds. Deploy in an in-place, all-at-once deployment configuration using AWS CodeDeploy.
Explanations:
Using GitHub websockets is not suitable for triggering CodePipeline; webhooks are the standard method. Additionally, an all-at-once deployment lacks zero downtime, which is a requirement.
This option uses GitHub webhooks to trigger CodePipeline, which is appropriate. It employs the Jenkins plugin for unit testing and sends alerts for bad builds. The blue/green deployment strategy allows for zero downtime and easy rollback.
While it correctly uses a blue/green deployment, GitHub websockets are again incorrectly mentioned as the trigger for CodePipeline. AWS X-Ray is primarily for monitoring and debugging, not for unit testing.
Although it uses GitHub webhooks and AWS X-Ray, the use of an all-at-once deployment configuration does not meet the requirement for zero downtime during deployments.