Skip to content

i-Cell-Mobilsoft-Open-Source/quarkus-sampler

Repository files navigation

Quarkus Sampler Documentation

Compile status Maven central version of Parent pom project License of Parent pom project Use JakartaEE project Commits Supported jvms GitHub Repo Stars

General

The project aims to provide a functional usage pattern for a general Quarkus project structure.

Used technologies

  • Coffee 2.0.0+
    JavaEE solution set aimed at gathering common algorithms used in the enterprise world, providing basic solutions that can be customized to meet our specific needs (https://github.com/i-Cell-Mobilsoft-Open-Source/coffee)

  • Java 17+

  • Maven 3.8.2+

  • Jakarta EE 10+

  • CDI 4.0+

  • Microprofile 6.0+

  • Quarkus 3.2.5.Final+

  • Tracing with grafana

Testing

The endpoints are not authenticated; you can use the SwaggerUI page. Unfortunately, due to the complexity of the API, it won’t work well in XML format because of XML namespace issues. Therefore, it’s better to use JSON format for this.

Developer tests - qs-testsuite

qs-testsuite

The developer tests use the Roaster project. This performs completely autonomous REST external calls to the deployed application. It can be run directly from the developer UI (JUnit plugin) or using Maven (by activating the 'profile' switch), for example:

mvn verify -Dprofile (1)
mvn verify -Dprofile=sandbox,local (2)
  1. default parameters

  2. Selected profiles from the configuration files

Release

The release process is automated and managed by GitHub Actions. In case of a release, not only a Maven release is prepared, but also Docker images for the sampler services.

/etc/release/Dockerfile

Fundamentally, it consists of three parts:

  1. Base image, which in our case is a Java 17 image.

  2. Downloading the JAR file - pulling the desired deployment file from Nexus.

  3. Finalizing the Docker image - including copying JAR files, etc.

/quarkus-sampler/etc/release/docker-compose.yml

Its function is to configure the variables of the services and manage them collectively.

Releases

No releases published

Packages

No packages published

Languages