Skip to content
This repository has been archived by the owner on Feb 14, 2023. It is now read-only.

catenax-ng/product-traceability-foss-backend

This repository is deprecated and will be archived

We moved here and the actual development takes place here

Product Traceability FOSS Backend (TRACE-FOSS)

Product Traceability FOSS Backend

Apache 2 License Coverage Quality Gate Status Kics Trivy VeraCode Eclipse DASH IP Check

What is TRACE-FOSS?

Trace-FOSS is a system for tracking parts along the supply chain. A high level of transparency across the supplier network enables faster intervention based on a recorded event in the supply chain. This saves costs by seamlessly tracking parts and creates trust through clearly defined and secure data access by the companies and persons involved in the process.

Getting started

Prerequisites

Installation

Releasing

Running tests

Unit tests

To run unit tests invoke following command:

./gradlew test

Integration tests

Product Traceability FOSS Backend relies on Testcontainers library in order to provide persistence layer, thus Docker Engine is required to be running.

To run integration tests invoke following command:

./gradlew integrationTest

Running all tests

To run all tests invoke following command:

./gradlew testAll

Please note that this task depends on integrationTest task, so it's required to have Docker Engine running.

Generating OpenAPI clients

OpenAPI clients are generated based on OpenAPI Specification files and correlated gradle tasks.

OpenAPI tasks have dependency on JavaCompile task that is OpenAPI client classes are automatically generated once you build the project and there should not be a need to generate them manually, however following command can be used for such purpose:

./gradlew generateAasRegistryApi

API documentation

The project follows OpenAPI Specification in order to document implemented REST Endpoints. The documentation can be found under /openapi directory or can be viewed in the Swagger UI accessing the url: {projectBasePath}/api/swagger-ui/index.html

Coding styles

To maintain coding styles we utilize EditorConfig tool, see configuration file for the details.

IDE plugins

Licenses

Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0) - see LICENSE