Valtimo-backend-implementation-template

Requirements

  • Ensure docker desktop is installed and running.

##Configure steps to take after templating

Adjust Gradle properties file

Adjust the projectName to a global name for the project.
Don’t focus on the first bpmn process name for example but rather take yor time and find an overarching name.
Here you can also control the main libraries for Spring/Kotlin/Valtimo.

docker-compose.yaml

Choose DB provider in

In the docker-compose.yml there are 2 main dbs to choose from Mysql or Postgres.

Keycloak defaults

Keycloak also is part of the default setup but can be left as is.
Note that 3 users are default added to a valtimo realm.
admin:admin, user:user and developer:developer.

docker-compose-integration-test.yaml

This file contains the test db which is used when running integrationTest task in gradle.

Auto-configuration (no annotations approach)

Ritense recommends to use autoconfigures over annotation based classes (Service/RestController etc.).
This allows spring to be snappier when starting up because scanning the whole project is slower.
Also creating a overview of what your project needs is better approach when testing the implementation for instance.
Create autoconfigures for your implementation in com.ritense.valtimo.autoconfigure,
once created add them to the meta-inf/spring.factories to be picked up

Setup integration testing

Open BaseIntegrationTest and add the autoconfigures from previous step.
If you want to control Valtimo startup flow comment/uncomment/add autoconfigure in TestConfiguration

GitHub

View Github