This repository features a robust CI/CD pipeline for a 3-tier full-stack Board Game Database web application supporting CRUD (Create, Read, Update, Delete) operations. The pipeline automates building, testing, and deployment, ensuring seamless, reliable delivery for features and enhancements.
The application empowers both regular users and privileged managers to manage board games and reviews through secure role-based access, and leverages modern DevOps practices with Docker, Kubernetes, Jenkins, and monitoring tools.
- View board game lists & reviews (All users, including guests)
- Authenticated users:
- Add board games
- Write reviews
- Managers:
- Edit and delete reviews
- Full control over board game entries and reviews
| Layer | Tech Stack | Purpose/Function |
|---|---|---|
| Backend | Java, Spring Boot, Spring MVC, JDBC, H2 DB (in-memory), JUnit, Maven | Business logic and data service |
| Frontend | HTML5, CSS, JavaScript, Thymeleaf, Thymeleaf Fragments, Bootstrap | UI/UX, responsive design, templating |
| DevOps | Jenkins, Docker, Kubernetes, AWS EC2, Prometheus, Grafana, SonarQube, Trivy, Blackbox Exporter | CI/CD, containerization, deployment, monitoring, vulnerability scanning |
- Full-stack board game & review management (CRUD operations)
- Role-based authentication & authorization via Spring Security
- Non-members: view only
- Users: add board games, write reviews
- Managers: edit/delete reviews
- Modern UI with Bootstrap and Thymeleaf Fragments
- Unit and integration testing with JUnit
- Clean MVC architecture for scalable development
- Automated deployment on AWS EC2
- CI/CD pipeline: Jenkins-based build, test, and deploy automation
- Monitoring & Logging: Prometheus & Grafana dashboards
- Security & Quality: SonarQube analysis, Trivy vulnerability scanning
- Clone the repository
git clone https://github.com/Vishsig/DevOps-3-tier-CI-CD.git cd DevOps-3-tier-CI-CD - Open the project in your IDE of choice
- Run the application (via Maven or your build tool)
- Login Credentials:
- User:
bugs| Password:bunny - Manager:
daffy| Password:duck
- User:
- Sign up as a new user to explore/manipulate roles
- Continuous Integration:
- Jenkins builds: code lint, test, SonarQube, Trivy
- Continuous Deployment:
- Docker builds, k8s YAML, auto-deploy to AWS EC2
- Monitoring:
- Prometheus + Grafana for dashboards and alerts
- Health & Blackbox Monitoring:
- Blackbox Exporter for endpoint status
DevOps-3-tier-CI-CD/
├── .github/workflows/ # CI/CD workflow files
├── src/ # Java source code
├── deployment-service.yaml # k8s deployment config
├── Dockerfile # Containerization config
├── Jenkinsfile # CI/CD pipeline script
├── pom.xml # Maven build file
├── README.md # Project & usage guide
├── ... # Frontend assets, config, SQL init scripts
- End-to-end automation for modern cloud-native deployment
- DevOps best practices (pipelines, monitoring, security)
- Advanced security: SonarQube, Trivy scans in CI/CD
- Extensible and production-ready architecture
- Repository: DevOps-3-tier-CI-CD
- Issues & Feedback: GitHub Issues
- Forks & Stars: Show your support and help the project grow!
Distributed under the MIT License. See LICENSE for more information (if available).
Questions, feedback or suggestions?
Open an issue on GitHub or contact via Vishsig Profile