AWS Deployment View (Testing Environment) - pinocchio61/Architecture GitHub Wiki

This view is an AWS infrastructure in the testing environment.

  1. The client visits various services from the EC2
  2. The EC2 instance initializes "sensitive" parameters in runtime from AWS Secrets Manager
  3. The EC2 writes and reads data from DynamoDB
  4. The EC2 dispatches transcription jobs to AWS Transcribe

The permissions to programmatically access AWS products are carefully managed by IAM.

The deployment process is as follows:

  1. The Push event on GitHub triggers a Deployment job on CodeDeploy
  2. CodeDeploy archives the latest codebase to Amazon S3
  3. CodeDeploy commands the EC2 to update the codebase
  4. EC2 pulls the codebase from S3 and restart all the services
  5. CodeDeploy publishes a message to SNS if there is a update failure
  6. SNS notifies the developer about the deployment failure