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.
- JDK 17
- Docker Engine
- see Releasing guide
To run unit tests invoke following command:
./gradlew test
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
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.
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
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
To maintain coding styles we utilize EditorConfig tool, see configuration file for the details.
- IntelliJ IDEA ships with built-in support for .editorconfig files
- Eclipse plugin
- Visual studio code plugin
Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0) - see LICENSE