Skip to content

Deployed a Java web application to Apache Tomcat, leveraging Maven for build automation, SonarQube for code quality analysis, and AWS S3 for artifact storage. The pipeline ensured reliable builds, quality checks, and smooth deployment to a production‑ready environment.

Notifications You must be signed in to change notification settings

githubWithGHANA/GitHub-Actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ 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...

About

Deployed a Java web application to Apache Tomcat, leveraging Maven for build automation, SonarQube for code quality analysis, and AWS S3 for artifact storage. The pipeline ensured reliable builds, quality checks, and smooth deployment to a production‑ready environment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published