Skip to content

Latest commit

 

History

History
66 lines (45 loc) · 2.04 KB

README.md

File metadata and controls

66 lines (45 loc) · 2.04 KB

Overview

Infrastructure for the Agora application.

Purpose

This repo contains infrastructure templates for the Agora application. It is also setup with CI/CD to automatically deploy the infrastructure to AWS.

Architecture

Agora runs on AWS as an Elastic Beanstalk app.

alt text

Security

The instances running agora and the database for it runs in a private subnet which means neither the instances nor the database are accessible from the internet.

Workflow

There is a specific workflow for making changes to the infrastructure.

  • Make pull requests to this repo
  • Get someone to review and approve your changes
  • Change is merged after being approved
  • Travis runs a build to test the infrastructure templates
  • Travis deploys the updated infrastructure to AWS

Continuous Integration

We have configured Travis to deploy CF template updates. Travis deploys using sceptre

AWS Infrastructure

We setup Agora application to run in AWS Elastic Beanstalk. The beanstalk is setup to run Agora in three environments:

Deployment Workflow

To deploy Agora updates to one of the environments just merge code to the branch you would like to deploy to then Travis will take care of building, testing and deployming the Agora application.

Contributions

Issues

Builds

Secrets

  • We use the AWS SSM to store secrets for this project. Sceptre retrieves the secrets using a sceptre ssm resolver and passes them to the cloudformation stack on deployment.