Skip to content

Latest commit

 

History

History
129 lines (78 loc) · 3.83 KB

README.md

File metadata and controls

129 lines (78 loc) · 3.83 KB

Spring Boot application template

Build Status

Purpose

The purpose of this template is to speed up the creation of tests for the Functional, Integration and Smoke Tests.

What's inside

The template is a working application with a minimal setup. It contains:

  • application skeleton
  • setup script to prepare project
  • common plugins and libraries
  • docker setup
  • swagger configuration for api documentation (see how to publish your api documentation to shared repository)
  • code quality tools already set up
  • integration with Travis CI
  • Hystrix circuit breaker enabled
  • MIT license and contribution information
  • Helm chart using chart-java.

The application exposes health endpoint (http://localhost:4550/health) and metrics endpoint (http://localhost:4550/metrics).

Plugins

The template contains the following plugins:

Setup

Located in ./bin/init.sh. Simply run and follow the explanation how to execute it.

Notes

Since Spring Boot 2.1 bean overriding is disabled. If you want to enable it you will need to set spring.main.allow-bean-definition-overriding to true.

JUnit 5 is now enabled by default in the project. Please refrain from using JUnit4 (except for libraries not able to support Junit5 like Serenity) and use the next generation

Building and deploying the application

Building the application

The project uses Gradle as a build tool. It already contains ./gradlew wrapper script, so there's no need to install gradle.

To build the project execute the following command:

  ./gradlew build

Running the Functional Tests

Change Directory to the root folder of the Project:

Run the following command

  ./gradlew clean functional

License

This project is licensed under the MIT License - see the LICENSE file for details