The goal of this project is to provide a modular solution for triggering processes via cron scheduling by calling specific API endpoints.
Note
|
During development, using a mock service is recommended if the goal is to develop REST calls. To do this, start the mock-service from the available docker-compose configurations. Additionally, when running maven clean install
, the application should be built using the add-mockapi
profile to include the MicroProfile REST client API.
There are two ways to perform testing.
A sub-project under ticker-testsuite
is created, which is as independent as possible from the main project. It does not depend on the project itself but only utilizes the API part.
<PROJECT_PATH>/ticker-testsuite
The developer tests use the Roaster project. This is a completely standalone REST testing tool that performs external calls on the deployed application. It can be executed directly through the developer UI (JUnit plugin) or via Maven (activating the "profile" switch), for example:
cd local_path/ticker/ticker-testsuite/ticker-testsuite-sample/ticker-testsuite-sample-service
mvn verify -Dprofile (1)
mvn verify -Dprofile=sandbox,local (2)
-
default parameters
-
selected profiles from configuration files
The release process is automated and is executed using GitHub Actions. For this, docker-compose and a Docker image are available.
The release process consists of three main steps:
-
Base image, which in this case is a Java 17 image
-
Downloading the JAR file - retrieving the desired deployment file from Nexus
-
Finalizing the Docker image - copying the JAR files, etc.
This file sets up the service variables and manages them together.
Execution is done manually via GitHub Actions.