Skip to content

Latest commit

 

History

History
61 lines (37 loc) · 3.23 KB

File metadata and controls

61 lines (37 loc) · 3.23 KB

Fully Automated Application Deployment CI/CD Pipeline using CircleCi

This project is meant to implement a complete CICD pipeline to start once there is a push to the master branch. The pipeline is nearly 12 jobs running on the code to make sure it is bug-free and reliable before deployment.

The final output in bullet points:

  • Deploy Infrastructure using AWS CLI commands and CloudFromation Templates.
  • Configure the provisioned backend EC2 instance using Ansible Playbooks and Roles.
  • Migrate the Database to an RDS-Postgres database on AWS and integrate it into the provisioned EC2.
  • Deploy application Frontend UI and host it on AWS S3 as a static website.
  • Deploy application Backend Code on EC2 and open PM2 server on port 3030 using Ansible.
  • Smoke Test the whole deployment process to ensure the application is working as intended.
  • Promote the application on CloudFront CDN utilizing (Blue/Green) Deployment Strategy.

The pipeline scheme

The pipeline flow

A push reposity passing all pipeline jobs

successful push to repo

A successful rollback on failure

Running API

Setting circleci to send us emails

CircleCI Notification

Cloudfront distribution

Cloudfront Distribution

Testing the website after deployment

Functioning website

The API is running successfully

Running API

Listing Employees through a raw API request

Running API

Configuring Prometheus for monitoring and troubleshooting

Prometheus

An alert from Prometheus [EC2 went down]

Prometheus Alert

Built With