Skip to content

ldonleycb/banking-app

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Banking Application

A Spring Boot REST API for managing bank accounts with deposit and withdrawal operations.

Features

  • Create and manage bank accounts
  • Deposit and withdraw funds
  • View account balances
  • Input validation and error handling
  • H2 in-memory database
  • Comprehensive test coverage

Tech Stack

  • Java 17
  • Spring Boot 3.2.0
  • Spring Data JPA
  • H2 Database
  • Maven
  • Docker

API Endpoints

  • GET /api/accounts - Get all accounts
  • GET /api/accounts/{id} - Get account by ID
  • POST /api/accounts - Create new account
  • POST /api/accounts/{id}/deposit - Deposit funds
  • POST /api/accounts/{id}/withdraw - Withdraw funds
  • DELETE /api/accounts/{id} - Delete account

Running Locally

# Build and run with Maven
mvn spring-boot:run

# Or build and run with Docker
docker build -t banking-app .
docker run -p 8080:8080 banking-app

Running Tests

mvn test

CloudBees CI/CD

This project includes:

  • Custom CloudBees action for running tests (.cloudbees/actions/run-tests)
  • Reusable workflow for building (.cloudbees/workflows/reusable-build.yaml)
  • Main CI pipeline (.cloudbees/workflows/ci.yaml)

The CI pipeline runs on push to main/develop and on pull requests to main.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 99.5%
  • Dockerfile 0.5%