Skip to content

nileshbhurewar/DevOpsify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DevOpsify – End-to-End CI/CD Cloud Automation

Overview

DevOpsify is a full DevOps automation project built around deploying a full-stack application (Spring Boot backend + Angular frontend) using modern tools and best practices. It automates everything from infrastructure provisioning to application deployment and monitoring using:

  • Terraform for Infrastructure as Code (AWS setup – VPC, EC2, EKS, RDS)
  • Ansible for server configuration (Docker, Jenkins, Datadog, etc.)
  • Jenkins for complete CI/CD pipeline automation
  • Docker for app containerization
  • Kubernetes (EKS) for production-grade orchestration
  • Datadog for real-time monitoring and alerting

This project reflects real-world DevOps workflows with full lifecycle automation.


Folder Structure

DevOpsify
├── Jenkinsfile                    # CI/CD pipeline configuration
├── angular-frontend               # Angular-based frontend application
│   ├── Dockerfile
│   ├── angular.json
│   ├── karma.conf.js
│   ├── package-lock.json
│   ├── package.json
│   ├── src                        # Frontend source code
│   ├── tsconfig.app.json
│   ├── tsconfig.json
│   └── tsconfig.spec.json
├── k8s                            # Kubernetes deployment manifests
│   ├── backend-deployment.yaml
│   ├── backend-service.yaml
│   ├── frontend-deployment.yaml
│   ├── frontend-service.yaml
│   └── ingress.yaml
├── spring-backend                 # Spring Boot backend REST API
│   ├── Dockerfile
│   ├── mvnw                       # Maven wrapper script
│   ├── mvnw.cmd
│   ├── pom.xml                    # Maven configuration
│   └── src                        # Backend source code
├── springbackend.sql              # SQL script for database initialization
└── terraform                      # IaC code to provision AWS infrastructure
    ├── ansible                    # Ansible playbooks for instance setup
    ├── ec2                        # EC2 instance setup (Jenkins master)
    ├── eks                        # EKS cluster infrastructure
    ├── main-key                   # SSH private key (generated by Terraform)
    ├── main-key.pub               # SSH public key (for EC2 access)
    ├── main.tf                    # Root Terraform configuration
    ├── rds                        # RDS MySQL database setup
    └── vpc                        # Custom VPC, subnets, gateways

Tech Stack

Category Tools/Technologies
IaC Terraform
Config Mgmt Ansible
CI/CD Jenkins
Orchestration AWS EKS (Kubernetes)
Monitoring Datadog
Containers Docker
Frontend Angular
Backend Spring Boot
Database AWS RDS (MySQL)

CI/CD Pipeline Highlights

🔹 Builds and pushes Docker images for frontend and backend
🔹 Performs code analysis (SonarQube) and vulnerability scanning (Trivy)
🔹 Deploys to EKS cluster using kubectl and Kubernetes manifests
🔹 Integrates Datadog for monitoring and cluster-level insights
🔹 Supports zero-downtime deployments


🧪 Key Features

✅ Automated Infrastructure Creation (AWS)
✅ Containerized App Deployment (Docker + Kubernetes)
✅ CI/CD Workflows (Jenkins Pipeline)
✅ Security Scanning and Validation
✅ Active Monitoring and Alerting (Datadog)
✅ Cost-optimized setup with Terraform best practices


Setup Steps (High-Level)

Credentials required: AWS, DockerHub, SonarQube, Datadog

  1. Clone the repo and configure Terraform variables
  2. Run terraform apply to provision AWS infra
  3. Use Ansible to configure EC2 master node
  4. Set up Jenkins, add pipeline using the provided Jenkinsfile
  5. Trigger the pipeline → Build → Scan → Deploy → Monitor

Monitoring with Datadog

  • EKS Cluster Stats
  • Pod-resource consumption
  • Log collection from application
  • Alerting for failures
  • Pre-configured dashboards

Author

Nilesh Bhurewar
GitHub Profile | LinkedIn

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors