Skip to content

Latest commit

 

History

History
84 lines (47 loc) · 4.04 KB

README.md

File metadata and controls

84 lines (47 loc) · 4.04 KB

Sample Java App - Spring Boot Server

CircleCI Build Status Software License

Description

This sample java spring boot app here is designed to demonstrate what a typical java CI workflow may look on CircleCI.

You can see the CI pipelines for this application running live on CircleCI.

In this sample config, we have a single workflow verify which will install and cache our required java libraries, and then run the mvn verify command. This config makes use of the Maven orb and Postgres orb, packages for CircleCI's config language, which makes writing our config shorter, and easier.

Getting Started

If you would like to copy the config.yml and adapt it to your project, be sure to read the comments in the config file to ensure it works for your project. For more details, see the CircleCI configuration reference.~~~~

Addtional Sample Configuration Files

Inside the .circleci directory, you will find an extended directory that extends the configuration beyond the default .circleci/config.yml. These configuration files are tested with every pull request to this sample app, so they stay up to date and verified working.

Heroku Deploy

The .circleci/extended/heroku-deploy.yml configuration file extends the default config by adding a job to deploy to heroku via a git push. For more information on how to configure this for your own project, visit the CircleCI docs for more details

About This App

This sample application is a spring boot~~~~ REST server written in java, and utilizes the connexion framework which allows us build and run the service from an OpenAPI/Swagger specification.

Continuous Food Delivery

When you start up the service, you can open this page in your browser to view the available API endpoints.

Swagger UI Screenshot

Front-End

CFD(Continuous Food Delivery) is a sample application that relies on a separate UI framework. If you would like to run this project locally with a complete UI, you can use a valid CFD front-end, such as one of the following sample projects:

Language GitHub Description
Javascript (Vue.js) Link A Javascript Front-End for CFD

Run and Test Locally

If you would like to try this application out locally, you can find runtime instructions below.

Requirements

Java 11~~~~+ OR Docker

Run Local Server

To run the server on a Docker container, please execute the following from the root directory:

docker-compose up --build

If not using docker, to run the server, please execute the following from the root directory:

./mvnw package
java -jar target/sample-java-cfd-0.0.1-SNAPSHOT.jar

Tests

To launch the unit tests, use pytest:

./mvnw test

Additional Resources

License

This repository is licensed under the MIT license. The license can be found here.