Skip to content

Latest commit

 

History

History
95 lines (73 loc) · 2.86 KB

File metadata and controls

95 lines (73 loc) · 2.86 KB

🚀 GitHub Actions: End-to-End CI/CD Workflow

GitHub repo size GitHub last commit GitHub

📦 Project Overview

This project demonstrates a complete CI/CD pipeline using GitHub Actions to deploy a Java web application to Apache Tomcat. It integrates:

  • Maven for build automation
  • SonarQube for code quality analysis
  • AWS S3 for artifact storage
  • GitHub Actions for orchestration
  • Tomcat Server for deployment

✅ The pipeline automates build, test, quality check, and deployment to a production-like environment.


🛠️ Tech Stack

Tool Purpose
GitHub Actions CI/CD orchestration
Maven Build automation
SonarQube Code quality analysis
AWS S3 Artifact storage
Apache Tomcat Application deployment
Java Backend application

📁 Repository Layout

.
├── .github/
│   └── workflows/                      # GitHub Actions workflow YAML (e.g., maven.yml)
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   └── in/javahome/myweb/
│   │   │       └── Calculator.java     # Core Java logic
│   │   └── webapp/
│   │       ├── WEB-INF/
│   │       │   └── web.xml             # Deployment descriptor
│   │       ├── assets/                 # Static assets (images, JS, etc.)
│   │       ├── index.jsp               # Main JSP page
│   │       └── style.css               # Stylesheet
│   └── test/
│       └── java/in/javahome/myweb/
│           └── CalculatorTest.java     # Unit test for Calculator
├── pom.xml                             # Maven build configuration
└── README.md                           # Project documentation

🔄 Workflow Summary

  1. Push to main branch
  2. GitHub Actions triggers:
    • Maven build
    • SonarQube scan
    • Artifact upload to S3
    • Deployment to Tomcat

📸 Screenshots

Add screenshots here showing:

  • GitHub Actions workflow run
  • SonarQube dashboard
  • AWS S3 bucket with artifact
  • Tomcat deployment confirmation

📚 How to Run Locally

# Clone the repo
git clone https://github.com/githubWithGHANA/GitHub-Actions.git
cd GitHub-Actions

# Build with Maven
mvn clean package

📄 License

MIT License

Copyright (c) 2026 Ghanashyama

Permission is hereby granted, free of charge, to any person obtaining a copy...