Skip to content

Cloud DevOps C3 Refresh Project Starter - Build CI/CD Pipelines, Monitoring & Logging - Spring 2020

License

Notifications You must be signed in to change notification settings

Goddhi/Ci-CD-Project

 
 

Repository files navigation

CircleCI

Blue Green Deployment

- Sets up a complete blue deployment with infrastructure including:


- Static website deployed in an S3 bucket
- Cloudfront pointing to the static website

- Creates a green deployment with the following infrastructure:


- S3 website frontend
- EC2 backend with NodeJS
- Postgres Database
- Integration tests with:
- Slack integration
- Frontend and backend smoke testing

- Sets up centralised structured logging and diagnosis with:


- Prometheus for monitoring
- Gmail for automated notifications

Steps

  • Fork this repository to your local machine

  • connect the repo to circleCI using the link below

  • Circle CI

  • Create an Environment varaible for AWS access in CircleCI

  • AWS_ACCESS_KEY_ID: Your AWS access key ID

  • AWS_DEFAULT_REGION: Your default AWS region

  • AWS_SECRET_ACCESS_KEY: Your AWS secret key

Create an Application Password using Gmail via the link below

Create application password

  • AuthEmail: Authentication email

  • EmailPassword: app password

  • FromEmail: Email to send Prometheus notifications from

  • ToEmail: The email to receive the notifications

    Slack (create a slack app and fill in the following required items to auto-notify your channel on failure)

    • SLACK_ACCESS_TOKEN
    • SLACK_DEFAULT_CHANNEL

    Database parameters for postgres DB A sample file is in ./backend/development.env. The only parameter you need to change here is TYPEORM_PASSWORD

    TYPEORM_CONNECTION=postgres TYPEORM_DATABASE=postgres TYPEORM_ENTITIES=./src/modules/domain/**/.entity.ts TYPEORM_MIGRATIONS=./src/migrations/.ts TYPEORM_MIGRATIONS_DIR=./src/migrations TYPEORM_USERNAME=postgres TYPEORM_PORT=5432 TYPEORM_PASSWORD: any password of your choice

Built With

License

License

About

Cloud DevOps C3 Refresh Project Starter - Build CI/CD Pipelines, Monitoring & Logging - Spring 2020

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 62.9%
  • CSS 35.6%
  • JavaScript 1.3%
  • Other 0.2%