diff --git a/CHANGELOG.md b/CHANGELOG.md
index c3cb8d56f..9cd87445c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,8 +2,9 @@
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
-
-## [Unreleased]
+## [2.0.0] - 2023-05-05
+- Removed token log statement from logs.
+- EDC version 0.3.0 changes for multiple BPN.
- Error handling & input validation Messages for exceptions during upload / creation.
- Manufacturer country code list.
- Cancel contract agreement on provider side.
@@ -14,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- To find out which contract belongs to which dataset User have to download the history file
## [1.9.1] - 2023-03-24
+
### Fixed
- Helm charts fixed with default values.
- Database dependency updated in charts.
@@ -126,8 +128,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Compliance with Catena-X Guidelines
- Integration with Digital Twin registry service.
-[unreleased]: https://github.com/eclipse-tractusx/dft-backend/compare/dftbackend-1.9.1...main
-[1.9.1]: https://github.com/eclipse-tractusx/dft-backend/compare/1.9.0...dftbackend-1.9.1
+[unreleased]: https://github.com/eclipse-tractusx/dft-backend/compare/2.0.0...main
+[2.0.0]: https://github.com/eclipse-tractusx/dft-backend/compare/1.9.1...2.0.0
+[1.9.1]: https://github.com/eclipse-tractusx/dft-backend/compare/1.9.0...1.9.1
[1.9.0]: https://github.com/eclipse-tractusx/dft-backend/compare/dft-backend-1.8.1...1.9.0
[1.8.1]: https://github.com/eclipse-tractusx/dft-backend/compare/dft-backend-1.8.0...dft-backend-1.8.1
[1.8.0]: https://github.com/eclipse-tractusx/dft-backend/compare/dft-backend-1.7.0...dft-backend-1.8.0
diff --git a/DEPENDENCIES b/DEPENDENCIES
index 79c47fad8..f376ff935 100644
--- a/DEPENDENCIES
+++ b/DEPENDENCIES
@@ -1,25 +1,25 @@
-maven/mavencentral/ch.qos.logback/logback-classic/1.4.5, EPL-1.0 OR LGPL-2.1-only, approved, #3435
-maven/mavencentral/ch.qos.logback/logback-core/1.4.5, EPL-1.0 OR LGPL-2.1-only, approved, #3373
+maven/mavencentral/ch.qos.logback/logback-classic/1.4.6, EPL-1.0 OR LGPL-2.1-only, approved, #3435
+maven/mavencentral/ch.qos.logback/logback-core/1.4.6, EPL-1.0 OR LGPL-2.1-only, approved, #3373
maven/mavencentral/com.electronwill.night-config/core/3.6.6, LGPL-3.0-only, approved, #3767
maven/mavencentral/com.electronwill.night-config/toml/3.6.6, LGPL-3.0-only, approved, #3766
maven/mavencentral/com.ethlo.time/itu/1.7.0, Apache-2.0, approved, clearlydefined
-maven/mavencentral/com.fasterxml.jackson.core/jackson-annotations/2.14.1, Apache-2.0, approved, #5303
-maven/mavencentral/com.fasterxml.jackson.core/jackson-core/2.14.1, Apache-2.0 AND MIT, approved, #4303
-maven/mavencentral/com.fasterxml.jackson.core/jackson-databind/2.14.1, Apache-2.0, approved, #4105
-maven/mavencentral/com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/2.14.1, Apache-2.0, approved, #5933
-maven/mavencentral/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/2.14.1, Apache-2.0, approved, clearlydefined
-maven/mavencentral/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.14.1, Apache-2.0, approved, #4699
-maven/mavencentral/com.fasterxml.jackson.module/jackson-module-parameter-names/2.14.1, Apache-2.0, approved, #5938
+maven/mavencentral/com.fasterxml.jackson.core/jackson-annotations/2.14.2, Apache-2.0, approved, #5303
+maven/mavencentral/com.fasterxml.jackson.core/jackson-core/2.14.2, Apache-2.0 AND MIT, approved, #4303
+maven/mavencentral/com.fasterxml.jackson.core/jackson-databind/2.14.2, Apache-2.0, approved, #4105
+maven/mavencentral/com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/2.14.2, Apache-2.0, approved, #5933
+maven/mavencentral/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/2.14.2, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.14.2, Apache-2.0, approved, #4699
+maven/mavencentral/com.fasterxml.jackson.module/jackson-module-parameter-names/2.14.2, Apache-2.0, approved, #5938
maven/mavencentral/com.fasterxml/classmate/1.5.1, Apache-2.0, approved, clearlydefined
-maven/mavencentral/com.github.ben-manes.caffeine/caffeine/3.1.2, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.github.ben-manes.caffeine/caffeine/3.1.5, Apache-2.0, approved, clearlydefined
maven/mavencentral/com.github.stephenc.jcip/jcip-annotations/1.0-1, Apache-2.0, approved, CQ21949
maven/mavencentral/com.google.code.gson/gson/2.10, Apache-2.0, approved, #6159
maven/mavencentral/com.google.code.gson/gson/2.9.1, Apache-2.0, approved, clearlydefined
-maven/mavencentral/com.google.errorprone/error_prone_annotations/2.16, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.google.errorprone/error_prone_annotations/2.18.0, Apache-2.0, approved, clearlydefined
maven/mavencentral/com.jayway.jsonpath/json-path/2.7.0, Apache-2.0, approved, clearlydefined
maven/mavencentral/com.networknt/json-schema-validator/1.0.72, Apache-2.0, approved, CQ22638
maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.24.4, Apache-2.0, approved, clearlydefined
-maven/mavencentral/com.sun.istack/istack-commons-runtime/4.1.1, BSD-3-Clause, approved, ee4j.jaxb-impl
+maven/mavencentral/com.sun.istack/istack-commons-runtime/4.1.1, BSD-3-Clause, approved, #2590
maven/mavencentral/com.vaadin.external.google/android-json/0.0.20131108.vaadin1, Apache-2.0, approved, CQ21310
maven/mavencentral/com.zaxxer/HikariCP/5.0.1, Apache-2.0, approved, clearlydefined
maven/mavencentral/commons-codec/commons-codec/1.15, Apache-2.0 AND BSD-3-Clause AND LicenseRef-Public-Domain, approved, CQ22641
@@ -29,39 +29,39 @@ maven/mavencentral/io.github.openfeign.form/feign-form-spring/3.8.0, Apache-2.0,
maven/mavencentral/io.github.openfeign.form/feign-form/3.8.0, Apache-2.0, approved, clearlydefined
maven/mavencentral/io.github.openfeign/feign-core/12.1, Apache-2.0, approved, clearlydefined
maven/mavencentral/io.github.openfeign/feign-slf4j/12.1, Apache-2.0, approved, clearlydefined
-maven/mavencentral/io.micrometer/micrometer-commons/1.10.3, Apache-2.0 AND (Apache-2.0 AND MIT), approved, #7333
-maven/mavencentral/io.micrometer/micrometer-observation/1.10.3, Apache-2.0, approved, #7331
+maven/mavencentral/io.micrometer/micrometer-commons/1.10.5, Apache-2.0 AND (Apache-2.0 AND MIT), approved, #7333
+maven/mavencentral/io.micrometer/micrometer-observation/1.10.5, Apache-2.0, approved, #7331
maven/mavencentral/io.swagger.core.v3/swagger-annotations-jakarta/2.2.7, Apache-2.0, approved, #5947
maven/mavencentral/io.swagger.core.v3/swagger-core-jakarta/2.2.7, Apache-2.0, approved, #5929
maven/mavencentral/io.swagger.core.v3/swagger-models-jakarta/2.2.7, Apache-2.0, approved, #5919
maven/mavencentral/jakarta.activation/jakarta.activation-api/2.1.1, EPL-2.0 OR BSD-3-Clause OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jaf
maven/mavencentral/jakarta.annotation/jakarta.annotation-api/2.1.1, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.ca
-maven/mavencentral/jakarta.inject/jakarta.inject-api/2.0.0, Apache-2.0, approved, ee4j.cdi
-maven/mavencentral/jakarta.persistence/jakarta.persistence-api/3.1.0, EPL-2.0 OR BSD-3-Clause, approved, ee4j.jpa
-maven/mavencentral/jakarta.transaction/jakarta.transaction-api/2.0.1, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jta
-maven/mavencentral/jakarta.validation/jakarta.validation-api/3.0.2, Apache-2.0, approved, ee4j.bean-validation
+maven/mavencentral/jakarta.inject/jakarta.inject-api/2.0.0, Apache-2.0, approved, clearlydefined
+maven/mavencentral/jakarta.persistence/jakarta.persistence-api/3.1.0, EPL-2.0 OR BSD-3-Clause AND (EPL-2.0 OR BSD-3-Clause AND BSD-3-Clause), approved, #7696
+maven/mavencentral/jakarta.transaction/jakarta.transaction-api/2.0.1, EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0, approved, #7697
+maven/mavencentral/jakarta.validation/jakarta.validation-api/3.0.2, Apache-2.0, approved, clearlydefined
maven/mavencentral/jakarta.xml.bind/jakarta.xml.bind-api/4.0.0, BSD-3-Clause, approved, ee4j.jaxb
-maven/mavencentral/net.bytebuddy/byte-buddy-agent/1.12.22, Apache-2.0, approved, #1810
-maven/mavencentral/net.bytebuddy/byte-buddy/1.12.22, Apache-2.0 AND BSD-3-Clause, approved, #1811
-maven/mavencentral/net.minidev/accessors-smart/2.4.8, Apache-2.0, approved, clearlydefined
-maven/mavencentral/net.minidev/json-smart/2.4.8, Apache-2.0, approved, #3288
+maven/mavencentral/net.bytebuddy/byte-buddy-agent/1.12.23, Apache-2.0, approved, #1810
+maven/mavencentral/net.bytebuddy/byte-buddy/1.12.23, Apache-2.0 AND BSD-3-Clause, approved, #1811
+maven/mavencentral/net.minidev/accessors-smart/2.4.9, Apache-2.0, approved, #7515
+maven/mavencentral/net.minidev/json-smart/2.4.10, Apache-2.0, approved, #3288
maven/mavencentral/org.antlr/antlr4-runtime/4.10.1, BSD-3-Clause AND LicenseRef-Public-domain AND MIT AND LicenseRef-Unicode-TOU, approved, #7065
maven/mavencentral/org.apache.commons/commons-csv/1.8, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.apache.commons/commons-lang3/3.12.0, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.apache.commons/commons-text/1.10.0, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.apache.logging.log4j/log4j-api/2.17.1, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.apache.logging.log4j/log4j-to-slf4j/2.17.1, Apache-2.0, approved, #2163
-maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-core/10.1.5, Apache-2.0 AND (EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0) AND (CDDL-1.0 OR GPL-2.0-only WITH Classpath-exception-2.0) AND W3C AND CC0-1.0, approved, #5949
-maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-el/10.1.5, Apache-2.0, approved, #6997
-maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-websocket/10.1.5, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-core/10.1.7, Apache-2.0 AND (EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0) AND (CDDL-1.0 OR GPL-2.0-only WITH Classpath-exception-2.0) AND W3C AND CC0-1.0, approved, #5949
+maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-el/10.1.7, Apache-2.0, approved, #6997
+maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-websocket/10.1.7, Apache-2.0, approved, #7920
maven/mavencentral/org.apiguardian/apiguardian-api/1.1.2, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.aspectj/aspectjweaver/1.9.19, EPL-1.0, approved, tools.aspectj
maven/mavencentral/org.assertj/assertj-core/3.23.1, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.bouncycastle/bcpkix-jdk15on/1.69, MIT, approved, clearlydefined
maven/mavencentral/org.bouncycastle/bcprov-jdk15on/1.69, MIT, approved, clearlydefined
maven/mavencentral/org.bouncycastle/bcutil-jdk15on/1.69, MIT, approved, clearlydefined
-maven/mavencentral/org.checkerframework/checker-qual/3.27.0, MIT, approved, clearlydefined
-maven/mavencentral/org.eclipse.angus/angus-activation/1.0.0, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.angus
+maven/mavencentral/org.checkerframework/checker-qual/3.32.0, MIT, approved, clearlydefined
+maven/mavencentral/org.eclipse.angus/angus-activation/2.0.0, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.angus
maven/mavencentral/org.eclipse.persistence/eclipselink/3.0.3, EPL-2.0 OR BSD-3-Clause, approved, ee4j.eclipselink
maven/mavencentral/org.eclipse.tractusx/assembly-part-relationship/0.0.1, Apache-2.0, approved, automotive.tractusx
maven/mavencentral/org.eclipse.tractusx/batch/0.0.1, Apache-2.0, approved, automotive.tractusx
@@ -75,12 +75,12 @@ maven/mavencentral/org.eclipse.tractusx/serial-part-typization/0.0.1, Apache-2.0
maven/mavencentral/org.eclipse.tractusx/single-level-bom-as-planned/0.0.1, Apache-2.0, approved, automotive.tractusx
maven/mavencentral/org.eclipse.tractusx/single-level-usage-as-built/0.0.1, Apache-2.0, approved, automotive.tractusx
maven/mavencentral/org.flywaydb/flyway-core/9.5.1, Apache-2.0, approved, #7296
-maven/mavencentral/org.glassfish.jaxb/jaxb-core/4.0.1, BSD-3-Clause, approved, ee4j.jaxb-impl
-maven/mavencentral/org.glassfish.jaxb/jaxb-runtime/4.0.1, BSD-3-Clause, approved, ee4j.jaxb-impl
-maven/mavencentral/org.glassfish.jaxb/txw2/4.0.1, BSD-3-Clause, approved, ee4j.jaxb-impl
+maven/mavencentral/org.glassfish.jaxb/jaxb-core/4.0.2, BSD-3-Clause, approved, ee4j.jaxb
+maven/mavencentral/org.glassfish.jaxb/jaxb-runtime/4.0.2, BSD-3-Clause, approved, ee4j.jaxb
+maven/mavencentral/org.glassfish.jaxb/txw2/4.0.2, BSD-3-Clause, approved, ee4j.jaxb
maven/mavencentral/org.hamcrest/hamcrest/2.2, BSD-3-Clause, approved, clearlydefined
-maven/mavencentral/org.hibernate.common/hibernate-commons-annotations/6.0.2.Final, LGPL-2.1-only, approved, #6962
-maven/mavencentral/org.hibernate.orm/hibernate-core/6.1.6.Final, LGPL-2.1-or-later AND (Apache-2.0 AND LGPL-2.1-only) AND (CC-PDDC AND LGPL-2.1-only) AND (EPL-2.0 OR BSD-3-Clause), approved, #5939
+maven/mavencentral/org.hibernate.common/hibernate-commons-annotations/6.0.6.Final, LGPL-2.1-only, approved, #6962
+maven/mavencentral/org.hibernate.orm/hibernate-core/6.1.7.Final, LGPL-2.1-or-later AND (Apache-2.0 AND LGPL-2.1-only) AND (CC-PDDC AND LGPL-2.1-only) AND (EPL-2.0 OR BSD-3-Clause), approved, #5939
maven/mavencentral/org.hibernate.validator/hibernate-validator/8.0.0.Final, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.jboss.logging/jboss-logging/3.5.0.Final, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.jboss/jandex/2.4.2.Final, Apache-2.0, approved, clearlydefined
@@ -95,61 +95,63 @@ maven/mavencentral/org.mockito/mockito-core/4.8.1, MIT, approved, clearlydefined
maven/mavencentral/org.mockito/mockito-junit-jupiter/4.8.1, MIT, approved, clearlydefined
maven/mavencentral/org.objenesis/objenesis/3.2, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.opentest4j/opentest4j/1.2.0, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.ow2.asm/asm/9.1, BSD-3-Clause, approved, CQ23029
-maven/mavencentral/org.postgresql/postgresql/42.5.1, BSD-2-Clause, approved, #3416
-maven/mavencentral/org.projectlombok/lombok/1.18.24, MIT AND LicenseRef-Public-Domain, approved, CQ23907
+maven/mavencentral/org.ow2.asm/asm/9.3, BSD-3-Clause, approved, clearlydefined
+maven/mavencentral/org.postgresql/postgresql/42.5.4, BSD-2-Clause, approved, #3416
+maven/mavencentral/org.projectlombok/lombok/1.18.26, MIT AND LicenseRef-Public-Domain, approved, CQ23907
maven/mavencentral/org.skyscreamer/jsonassert/1.5.1, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.slf4j/jul-to-slf4j/2.0.6, MIT, approved, clearlydefined
-maven/mavencentral/org.slf4j/slf4j-api/2.0.6, MIT, approved, #5915
+maven/mavencentral/org.slf4j/jul-to-slf4j/2.0.7, MIT, approved, #7698
+maven/mavencentral/org.slf4j/slf4j-api/2.0.7, MIT, approved, #5915
maven/mavencentral/org.springdoc/springdoc-openapi-starter-common/2.0.2, Apache-2.0, approved, #5920
maven/mavencentral/org.springdoc/springdoc-openapi-starter-webmvc-api/2.0.2, Apache-2.0, approved, #5950
maven/mavencentral/org.springdoc/springdoc-openapi-starter-webmvc-ui/2.0.2, Apache-2.0, approved, #5923
-maven/mavencentral/org.springframework.boot/spring-boot-autoconfigure/3.0.2, Apache-2.0, approved, #6981
-maven/mavencentral/org.springframework.boot/spring-boot-devtools/3.0.2, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.springframework.boot/spring-boot-starter-aop/3.0.2, Apache-2.0, approved, #6965
-maven/mavencentral/org.springframework.boot/spring-boot-starter-data-jpa/3.0.2, Apache-2.0, approved, #7351
-maven/mavencentral/org.springframework.boot/spring-boot-starter-jdbc/3.0.2, Apache-2.0, approved, #6974
-maven/mavencentral/org.springframework.boot/spring-boot-starter-json/3.0.2, Apache-2.0, approved, #7006
-maven/mavencentral/org.springframework.boot/spring-boot-starter-logging/3.0.2, Apache-2.0, approved, #6982
-maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-resource-server/3.0.2, Apache-2.0, approved, #6967
-maven/mavencentral/org.springframework.boot/spring-boot-starter-security/3.0.2, Apache-2.0, approved, #7329
-maven/mavencentral/org.springframework.boot/spring-boot-starter-test/3.0.2, Apache-2.0, approved, #7001
-maven/mavencentral/org.springframework.boot/spring-boot-starter-tomcat/3.0.2, Apache-2.0, approved, #6987
-maven/mavencentral/org.springframework.boot/spring-boot-starter-validation/3.0.2, Apache-2.0, approved, #6971
-maven/mavencentral/org.springframework.boot/spring-boot-starter-web/3.0.2, Apache-2.0, approved, #5945
-maven/mavencentral/org.springframework.boot/spring-boot-starter/3.0.2, Apache-2.0, approved, #7330
-maven/mavencentral/org.springframework.boot/spring-boot-test-autoconfigure/3.0.2, Apache-2.0, approved, #6966
-maven/mavencentral/org.springframework.boot/spring-boot-test/3.0.2, Apache-2.0, approved, #6976
-maven/mavencentral/org.springframework.boot/spring-boot/3.0.2, Apache-2.0, approved, #7327
+maven/mavencentral/org.springframework.boot/spring-boot-autoconfigure/3.0.5, Apache-2.0, approved, #6981
+maven/mavencentral/org.springframework.boot/spring-boot-devtools/3.0.5, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.springframework.boot/spring-boot-starter-aop/3.0.5, Apache-2.0, approved, #6965
+maven/mavencentral/org.springframework.boot/spring-boot-starter-cache/3.0.5, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.springframework.boot/spring-boot-starter-data-jpa/3.0.5, Apache-2.0, approved, #7351
+maven/mavencentral/org.springframework.boot/spring-boot-starter-jdbc/3.0.5, Apache-2.0, approved, #6974
+maven/mavencentral/org.springframework.boot/spring-boot-starter-json/3.0.5, Apache-2.0, approved, #7006
+maven/mavencentral/org.springframework.boot/spring-boot-starter-logging/3.0.5, Apache-2.0, approved, #6982
+maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-resource-server/3.0.5, Apache-2.0, approved, #6967
+maven/mavencentral/org.springframework.boot/spring-boot-starter-security/3.0.5, Apache-2.0, approved, #7329
+maven/mavencentral/org.springframework.boot/spring-boot-starter-test/3.0.5, Apache-2.0, approved, #7001
+maven/mavencentral/org.springframework.boot/spring-boot-starter-tomcat/3.0.5, Apache-2.0, approved, #6987
+maven/mavencentral/org.springframework.boot/spring-boot-starter-validation/3.0.5, Apache-2.0, approved, #6971
+maven/mavencentral/org.springframework.boot/spring-boot-starter-web/3.0.5, Apache-2.0, approved, #5945
+maven/mavencentral/org.springframework.boot/spring-boot-starter/3.0.5, Apache-2.0, approved, #7330
+maven/mavencentral/org.springframework.boot/spring-boot-test-autoconfigure/3.0.5, Apache-2.0, approved, #6966
+maven/mavencentral/org.springframework.boot/spring-boot-test/3.0.5, Apache-2.0, approved, #6976
+maven/mavencentral/org.springframework.boot/spring-boot/3.0.5, Apache-2.0, approved, #7327
maven/mavencentral/org.springframework.cloud/spring-cloud-commons/4.0.0-RC3, Apache-2.0, approved, #7292
maven/mavencentral/org.springframework.cloud/spring-cloud-context/4.0.0-RC3, Apache-2.0, approved, #7306
maven/mavencentral/org.springframework.cloud/spring-cloud-openfeign-core/4.0.0-RC3, Apache-2.0, approved, #7305
maven/mavencentral/org.springframework.cloud/spring-cloud-starter-openfeign/4.0.0-RC3, Apache-2.0, approved, #7302
maven/mavencentral/org.springframework.cloud/spring-cloud-starter/4.0.0-RC3, Apache-2.0, approved, #7299
-maven/mavencentral/org.springframework.data/spring-data-commons/3.0.1, Apache-2.0, approved, #5943
-maven/mavencentral/org.springframework.data/spring-data-jpa/3.0.1, Apache-2.0, approved, #5935
-maven/mavencentral/org.springframework.security/spring-security-config/6.0.1, Apache-2.0, approved, #7338
-maven/mavencentral/org.springframework.security/spring-security-core/6.0.1, Apache-2.0, approved, #7325
-maven/mavencentral/org.springframework.security/spring-security-crypto/6.0.1, Apache-2.0 AND ISC, approved, #7326
-maven/mavencentral/org.springframework.security/spring-security-oauth2-core/6.0.1, Apache-2.0, approved, #7324
-maven/mavencentral/org.springframework.security/spring-security-oauth2-jose/6.0.1, Apache-2.0, approved, #7337
-maven/mavencentral/org.springframework.security/spring-security-oauth2-resource-server/6.0.1, Apache-2.0, approved, #7335
+maven/mavencentral/org.springframework.data/spring-data-commons/3.0.4, Apache-2.0, approved, #5943
+maven/mavencentral/org.springframework.data/spring-data-jpa/3.0.4, Apache-2.0, approved, #5935
+maven/mavencentral/org.springframework.security/spring-security-config/6.0.2, Apache-2.0, approved, #7338
+maven/mavencentral/org.springframework.security/spring-security-core/6.0.3, Apache-2.0, approved, #7325
+maven/mavencentral/org.springframework.security/spring-security-crypto/6.0.2, Apache-2.0 AND ISC, approved, #7326
+maven/mavencentral/org.springframework.security/spring-security-oauth2-core/6.0.2, Apache-2.0, approved, #7324
+maven/mavencentral/org.springframework.security/spring-security-oauth2-jose/6.0.2, Apache-2.0, approved, #7337
+maven/mavencentral/org.springframework.security/spring-security-oauth2-resource-server/6.0.2, Apache-2.0, approved, #7335
maven/mavencentral/org.springframework.security/spring-security-rsa/1.0.11.RELEASE, Apache-2.0, approved, CQ20647
-maven/mavencentral/org.springframework.security/spring-security-web/6.0.1, Apache-2.0, approved, #7328
-maven/mavencentral/org.springframework/spring-aop/6.0.4, Apache-2.0, approved, #5940
-maven/mavencentral/org.springframework/spring-aspects/6.0.4, Apache-2.0, approved, #5930
-maven/mavencentral/org.springframework/spring-beans/6.0.4, Apache-2.0, approved, #5937
-maven/mavencentral/org.springframework/spring-context/6.0.4, Apache-2.0, approved, #5936
-maven/mavencentral/org.springframework/spring-core/6.0.4, Apache-2.0 AND BSD-3-Clause, approved, #5948
-maven/mavencentral/org.springframework/spring-expression/6.0.4, Apache-2.0, approved, #3284
-maven/mavencentral/org.springframework/spring-jcl/6.0.4, Apache-2.0, approved, #3283
-maven/mavencentral/org.springframework/spring-jdbc/6.0.4, Apache-2.0, approved, #5924
-maven/mavencentral/org.springframework/spring-orm/6.0.4, Apache-2.0, approved, #5925
-maven/mavencentral/org.springframework/spring-test/6.0.4, Apache-2.0, approved, #7003
-maven/mavencentral/org.springframework/spring-tx/6.0.4, Apache-2.0, approved, #5926
-maven/mavencentral/org.springframework/spring-web/6.0.4, Apache-2.0, approved, #5942
-maven/mavencentral/org.springframework/spring-webmvc/6.0.4, Apache-2.0, approved, #5944
+maven/mavencentral/org.springframework.security/spring-security-web/6.0.3, Apache-2.0, approved, #7328
+maven/mavencentral/org.springframework/spring-aop/6.0.7, Apache-2.0, approved, #5940
+maven/mavencentral/org.springframework/spring-aspects/6.0.7, Apache-2.0, approved, #5930
+maven/mavencentral/org.springframework/spring-beans/6.0.7, Apache-2.0, approved, #5937
+maven/mavencentral/org.springframework/spring-context-support/6.0.7, Apache-2.0, approved, #6960
+maven/mavencentral/org.springframework/spring-context/6.0.7, Apache-2.0, approved, #5936
+maven/mavencentral/org.springframework/spring-core/6.0.8, Apache-2.0 AND BSD-3-Clause, approved, #5948
+maven/mavencentral/org.springframework/spring-expression/6.0.8, Apache-2.0, approved, #3284
+maven/mavencentral/org.springframework/spring-jcl/6.0.7, Apache-2.0, approved, #3283
+maven/mavencentral/org.springframework/spring-jdbc/6.0.7, Apache-2.0, approved, #5924
+maven/mavencentral/org.springframework/spring-orm/6.0.7, Apache-2.0, approved, #5925
+maven/mavencentral/org.springframework/spring-test/6.0.7, Apache-2.0, approved, #7003
+maven/mavencentral/org.springframework/spring-tx/6.0.7, Apache-2.0, approved, #5926
+maven/mavencentral/org.springframework/spring-web/6.0.7, Apache-2.0, approved, #5942
+maven/mavencentral/org.springframework/spring-webmvc/6.0.8, Apache-2.0, approved, #5944
maven/mavencentral/org.webjars/swagger-ui/4.15.5, Apache-2.0 AND MIT, approved, #5921
maven/mavencentral/org.webjars/webjars-locator-core/0.52, MIT, approved, clearlydefined
maven/mavencentral/org.xmlunit/xmlunit-core/2.9.1, Apache-2.0, approved, #6272
-maven/mavencentral/org.yaml/snakeyaml/2.0, Apache-2.0 AND (Apache-2.0 AND BSD-3-Clause AND EPL-1.0 AND GPL-2.0-or-later AND LGPL-2.1-or-later), restricted, #7275
+maven/mavencentral/org.yaml/snakeyaml/2.0, Apache-2.0 AND (Apache-2.0 OR BSD-3-Clause OR EPL-1.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later), approved, #7275
diff --git a/InstallationGuide.md b/InstallationGuide.md
index 22f37712c..984e06816 100644
--- a/InstallationGuide.md
+++ b/InstallationGuide.md
@@ -1,50 +1,39 @@
# Installation Guide
-## Product DFT
-Install from the command line:
-docker container run -d --name [conatainer_name] ghcr.io/catenax-ng/tx-dft-backend:[tag]
+It is necessary to inject the environment variables, credentials and URLs that can be found on application.properties file.
+For more details, please refer configuration section from [README.md](README.md)
+### RUN SDE backend in ArgoCD
+ We have helm chart available for ArgoCD deployment. In deployment, if don't specified specific version, the app version/chart version is automatically picked up by ArgoCD and deployed to the environment using Helm charts.
+
+ In values.yaml you can find `default` as value for all required configuration. You need to change all those values as per your need. For reference, please refer configuration example section.
+
+ As part of argo CD deployment using helm chart the postgres database dependency will get provide automatic but for EDC, DigitalTwin and Portal you need to provide valid details as per configuration requirement other wise SDE service will get started with default configuration but will not work as expected.
+
+### RUN SDE Backend in k8s cluster
+#### Prerequisites
+- k8s cluster/ minikube
+- helm
+- Docker
+
+ In values.yaml you can find `default` as value for all required configuration. You need to change all those values as per your need. For reference, please refer configuration example section.
+
+ ```helm repo add eclipse-tractusx-dft-backend https://github.com/eclipse-tractusx/dft-backend/tree/main/charts ```
+
+ ```helm install release-name eclipse-tractusx/dft-backend ```
+
+### RUN SDE Backend Locally
+#### Prerequisites
+- JDK18
+- Postgres 11.9.13
+
+#### Steps
+1. Clone the GitHub Repository - https://github.com/eclipse-tractusx/dft-backend.
+2. Get your instance of postgres running (Create **dftdb** new database).
+3. Setup your project environment to JDK 18.
+4. Provide require application configuration in application.properties as specified in step configuration.properties.
+5. Start the SDE spring boot application from your IDE using main class or use spring CLI.
-It is necessary to inject the environment variables, credentials and URLs that can be found on application.properties file.
-#### CatenaX variables
-| Property | Value | Description | Example |
-|----------------|----------------|--------------------|---------|
-| manufacturerId | MANUFACTURERID | Id of manufacturer | CatenaX |
-
-
-#### Digital Twins variables:
-| Property name | Environment Variable Name | Description | Example Value |
-|-------------------------------------------|-------------------------------------------|------------------------------------------------|----------------------------------|
-| digital-twins.hostname | DIGITAL-TWINS_HOSTNAME | hostname for Digital Twins | https:// |
-| digital-twins.authentication.url | DIGITAL-TWINS_AUTHENTICATION_URL | authentication url for Digital Twins | https:// |
-| digital-twins.authentication.clientId | DIGITAL-TWINS_AUTHENTICATION_CLIENTID | client ID authentication for Digital Twins | sa-cl6-cx-4 |
-| digital-twins.authentication.clientSecret | DIGITAL-TWINS_AUTHENTICATION_CLIENTSECRET | client secret authentication for Digital Twins | VrL8uSG5Tn3NrFiY39vs0klTmlvsRRmo |
-
-The values are on the [Vault].
-*Must create a GitHub token to access
-
-#### EDC variables:
-| Property name | Environment Variable Name | Description | Example Value |
-|------------------|---------------------------|-----------------------------------------------|---------------|
-| edc.hostname | EDC_HOSTNAME | edc hostname | https:// |
-| edc.apiKeyHeader | EDC_APIKEYHEADER | API KEY header for edc | X-Api_Key |
-| edc.apiKey | EDC_APIKEY | API KEY for edc | 123456 |
-| dft.hostname | DFT_HOSTNAME | hostname for DFT | https:// |
-| dft.apiKeyHeader | DFT_APIKEYHEADER | url authentication key for edc asset payload | Api-Key |
-| dft.apiKey | DFT_APIKEY | url authentication code for edc asset payload | someCode |
-| edc.enabled | EDC_ENABLED | enable / disable edc | true / false |
-
-#### Keycloak variables:
-| Property name | Environment Variable Name | Description | Example Value |
-|-----------------------------------|---------------------------|------------------------------|---------------|
-| connector.discovery.token-url | KEYCLOCK_HOSTNAME | keyclock hostnam | https:// |
-| connector.discovery.clientId | KEYCLOCK_CLIENTID | keyclock clientId | X-Api_Key |
-| connector.discovery.clientSecret | KEYCLOCK_CLIENTSECRET | keyclock clientse | 123456 |
-| portal.backend.hostname | PORTAL_HOSTNAME | portal hostname | https:// |
-
-
-The values are in the [Vault].
-*Must create a GitHub token to access
## Upload a file:
When a file .csv is uploaded, the program checks whether the file is a SerialPartTypization or an AssemblyPartRelationship and there is a pipeline for each one.
@@ -109,7 +98,5 @@ Apart from both upload Batch upload is additional feature were added into DFT.
The file .csv is loaded in memory, the content is saved and then, the file is removed from memory.
-If the file is not .csv, it is read, processed and is considered as FAILED
-
-
+If the file is not .csv, it is read, processed and is considered as FAILED.
diff --git a/README.md b/README.md
index a0bfe64be..eba2d181f 100644
--- a/README.md
+++ b/README.md
@@ -1,40 +1,162 @@
- # Data Format Transformer(Simple Data Exchanger)
+ # Simple Data Exchanger (formally known Data Format Transformer)
---
## Description
-This repository is part of the overarching Catena-X project. It contains the Backend for the DFT.
-DFT is short for Data Format Transformer.
+This repository is part of the overarching Catena-X project. It contains the Backend for the SDE/DFT.
+SDE Simple data exchanger(formally known DFT is short for Data Format Transformer)
It is a standalone service which can be self-hosted.
It enables companies to provide their data in the Catena-X network via an EDC.
-Data is uploaded via two CSV-files. The DFT registers the data in the Digital Twin Registry and makes it accessible via an EDC.
-The DFT project has two dependencies: Digital Twins and EDC.
-##### For installation guide: see [InstallationGuide.md](InstallationGuide.md)
+## Important !!!
+### Deployment of SDE backend
+The Auto-Setup is the central service orchestration component. The Auto-Setup hide all complex configuration properties for you and get SDE Backend as well as Frontend service deployed for you as service. The Auto-Setup taking all deployment through their specific helm charts. The Auto-Setup knows which prerequisites and which configurations are required for the components and creates them. All dependencies and any error messages are intercepted by Auto-Setup and treated correctly and meaningfully. Therefore, Auto-Setup meets your requirements exactly.
-### How to run
+Once SDE deployed, The data is uploaded via CSV-files or tabular entry. The SDE registers the data in the Digital Twin Registry and makes it accessible via an EDC.
-DFT is a SpringBoot Java software project managed by Maven.
+The SDE project has three dependencies: Digital Twins, Portal and EDC.
-When running, the project requires a postgresql database to be available to connect to. Per default configuration the application expects postgres to run on localhost on port 5432.
+## How to run
-You can find the standard credentials as well as further database configurations int the application.properties file in the resource folder.
+SDE is a SpringBoot Java Maven software project.
+When running, the project requires a postgresql database to be available to connect.
+You can find the standard require configuration keys as below:
-### Prerequisites
-- JDK18
-- Postgres 13.2
-- Docker
+### Configuration
-### Steps
-1. Clone the GitHub Repository - https://github.com/eclipse-tractusx/dft-backend
-2. Get your instance of postgres running.(Create **dftdb** new database)
-3. Setup your project environment to JDK 18
-4. Start the application from your IDE
+Listed below are configuration keys needed to get the `sde-backend` up and running.
+
+| Key | Required | Example | Description |
+|--- |--- |--- |--- |
+| keycloak.clientid | X | sdeclientId | This is keycloak clienId/resource |
+| spring.security.oauth2.resourceserver.jwt.issuer-uri | X | https://ids.issuer.com/auth/realms/master | Url of Keycloak issuer uri |
+| management.endpoint.health.probes.enabled | X | true | Default value, no need to change |
+| management.health.readinessstate.enabled | X | true | Default value, no need to change |
+| management.health.livenessstate.enabled | X | true | Default value, no need to change |
+| management.endpoints.web.exposure.include | X | * | Default value, no need to change |
+| spring.lifecycle.timeout-per-shutdown-phase | X | 30s | Default value, no need to change |
+| logging.level.org.springframework.security.web.csrf | X | INFO | Default value, no need to change |
+| logging.level.org.apache.http | X | info | Default value, no need to change |
+| logging.level.root | X | info | Default value, no need to change |
+| file.upload-dir | X | ./temp/ | Default value, no need to change |
+| spring.servlet.multipart.enabled | X | true | Default value, no need to change |
+| spring.main.allow-bean-definition-overriding | X | true | Default value, no need to change |
+| spring.servlet.multipart.file-size-threshold | X | 2KB | Default value, no need to change |
+| spring.servlet.multipart.max-file-size | X | 200MB | Default value, no need to change |
+| spring.servlet.multipart.max-request-size | X | 215MB | Default value, no need to change |
+| server.servlet.context-path | X | /api | Default value, no need to change |
+| spring.flyway.baseline-on-migrate | X | true | Default value, no need to change |
+| spring.flyway.locations | X | classpath:/flyway | Default value, no need to change |
+| spring.datasource.driver-class-name | X | org.postgresql.Driver | Default value, no need to change |
+| spring.datasource.url | X | jdbc:postgres//dbserver.com:5432/db | Your database server details |
+| spring.datasource.username | X | | Your database password |
+| spring.datasource.password | X | | Your database password |
+| spring.jpa.hibernate.ddl-auto | | update | Default value, no need to change |
+| spring.jpa.open-in-view | | false | Default value, no need to change |
+| digital-twins.hostname | X | https://example.digitaltwin.com | Digital twin registry url |
+| digital-twins.authentication.url | X | http://ex*.keycloak.com/auth/realms/default | Digital twin registry auth url |
+| digital-twins.authentication.clientId | X | your clientId | Digital twin registry clientId |
+| digital-twins.authentication.clientSecret | X | your secrete | Digital twin registry secrete |
+| digital-twins.authentication.grantType | X | client_credentials | Default value, no need to change |
+| edc.hostname | X | https://example.provider-connector.com | Your EDC provider connector url |
+| edc.apiKeyHeader | X | x-api-key | Your connector api key |
+| edc.apiKey | X | yourpass | Your connector apikey value |
+| edc.consumer.hostname | X | https://example.consumer-connector.com | Your EDC consumer connector |
+| edc.consumer.apikeyheader | X | x-api-key | Your connector api key |
+| edc.consumer.apikey | X | yourpass | Your connector apikey value |
+| edc.consumer.datauri | X | /api/v1/ids/data | IDS endpoint path |
+| dft.hostname | X | https://example.sdehost.com | Your SDE hostname |
+| dft.apiKeyHeader | X | API_KEY | Your default key |
+| dft.apiKey | X | yourpass | Your default key password |
+| manufacturerId | X | default | Your CX partner BPN number |
+| partner.pool.hostname | X | default | url to get legal-entity information|
+| connector.discovery.token-url | X | https://example.portal.backend.com | Portal backend AuthURL |
+| connector.discovery.clientId | X | default | client ID for connector discovery |
+| connector.discovery.clientSecret | X | default | password for connector discovery |
+| portal.backend.hostname | X | default | Portal backend svc URL based on BPN|
+| springdoc.api-docs.path | X | /api-docs | swagger API path |
+
+#### Example Configuration/application.properties
+
+```
+keycloak.clientid=sdeclientId
+spring.security.oauth2.resourceserver.jwt.issuer-uri=https://ids.issuer.com/auth/realms/master
+management.endpoint.health.probes.enabled=true
+management.health.readinessstate.enabled=true
+management.health.livenessstate.enabled=true
+management.endpoints.web.exposure.include=*
+spring.lifecycle.timeout-per-shutdown-phase=30s
+
+#provider your logging level
+logging.level.org.springframework.security.web.csrf=INFO
+logging.level.org.apache.http=info
+logging.level.root=info
+
+#default spring boot configuration not need to change
+file.upload-dir=./temp/
+spring.servlet.multipart.enabled=true
+spring.main.allow-bean-definition-overriding=true
+spring.servlet.multipart.file-size-threshold=2KB
+spring.servlet.multipart.max-file-size=200MB
+spring.servlet.multipart.max-request-size=215MB
+
+#API context path to access application apis
+server.servlet.context-path=/api
+
+#Database and flyway details, the database will
+spring.flyway.baseline-on-migrate=true
+spring.flyway.locations=classpath:/flyway
+spring.datasource.driver-class-name=org.postgresql.Driver
+spring.datasource.url=jdbc:postgres//dbserver.com:5432/dftdb #your database server details
+spring.datasource.username=your database password
+spring.datasource.password=your database password
+spring.jpa.hibernate.ddl-auto=update
+spring.jpa.open-in-view=false
+
+#Provide digital twin registry details which SDE should use to create twin for your,
+#The need technical user details depend on digital twin security configuration
+digital-twins.hostname=https://example.digitaltwin.com
+digital-twins.authentication.url=http://example.keycloak.com/auth/realms/default
+digital-twins.authentication.clientId=your clientId
+digital-twins.authentication.clientSecret=your secrete
+digital-twins.authentication.grantType=client_credentials
+
+#The EDC connector information which SDE should use As Data provider connector
+edc.hostname=https://example.provider-connector.com
+edc.apiKeyHeader=your connector api key
+edc.apiKey=your connector apikey value
+
+#The EDC connector information which SDE should use As Data consumer connector
+edc.consumer.hostname=https://example.consumer-connector.com
+edc.consumer.apikeyheader=your connector api key
+edc.consumer.apikey=your connector apikey value
+edc.consumer.datauri=/api/v1/ids/data
+
+#Your Own SDE host url which will share with EDC connector as data address proxy
+dft.hostname=https://example.sdehost.com
+dft.apiKeyHeader=your default key
+dft.apiKey=your default key password
+
+#Your company BPN number
+manufacturerId=default
+
+#Portal pool hostname url to use discover legal company information in SDE
+partner.pool.hostname=default
+
+#Portal backend url for get connector list based on BPN number
+connector.discovery.token-url=https://example.portal.backend.com
+connector.discovery.clientId=default
+connector.discovery.clientSecret=default
+portal.backend.hostname=default
+springdoc.api-docs.path=/api-docs
+```
+
+The above configuration we can use as for different deployment as specified here [InstallationGuide.md](InstallationGuide.md)
---
### Supported submodules
-To find information about supported submodels and there version in SDE please visit [here](modules/sde-submodules/submodules.md)
+To find information about supported submodules and there version in SDE please visit [here](modules/sde-submodules/submodules.md)
---
@@ -49,7 +171,7 @@ To find information about supported submodels and there version in SDE please vi
* PartSiteInformationAsPlanned
* SingleLevelUsageAsBuilt
2. ***Json Update***
- * SerialTypezation
+ * SerialPartTypization
* AssemblyRelationship
* Batch
* PartAsPlanned
@@ -57,7 +179,7 @@ To find information about supported submodels and there version in SDE please vi
* PartSiteInformationAsPlanned
* SingleLevelUsageAsBuilt
3. ***Application UI***
- * SerialTypezation
+ * SerialPartTypization
* AssemblyRelationship
* Batch
* PartAsPlanned
@@ -69,7 +191,7 @@ To find information about supported submodels and there version in SDE please vi
---
## RESTful APIs OF DFT (Simple Data Exchanger)
-###### ***Note: API_KEY, AUTHORISATION TOKEN Required as Headers***
+###### ***Note: API_KEY, AUTHORIZATION TOKEN Required as Headers***
---
| API | Description | Request body | Response body |
| ------ | ------ | ------ | ------ |
@@ -90,7 +212,7 @@ To find information about supported submodels and there version in SDE please vi
| **POST:- localhost:8080/api/subscribe-data-offers** |This API is used to subscribe data offers | Refer Api Doc |Refer Api Doc|
| **GET:- localhost:8080/api/contract-offers** |This API is used to get all contract offers | Refer Api Doc |Refer Api Doc|
| **GET:- localhost:8080/api/legal-entities** |This API is used to fetch legal entities (list of company's) for Process| Refer Api Doc |Refer Api Doc|
-| **POST:- localhost:8080/api/connectors-discovery** |This API is used to fetch connectores information | Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/connectors-discovery** |This API is used to fetch connector's information | Refer Api Doc |Refer Api Doc|
| **GET:- localhost:8080/api/submodels** |This API is used to get all submodels list which is implemented/supported by SDE | Refer Api Doc | Refer Api Doc |
| **GET:- localhost:8080/api/submodels/{submodelName}** |This API is used to get the schema data of specific model | Refer Api Doc | Refer Api Doc |
| **POST:- localhost:8080/api/{submodel}/upload** |This API is used to uploading data From CSV file for particular selected submodel | Refer Api Doc |4ca03d5f-9e37-4c12-a8b8-6583b81892c8 |
@@ -145,7 +267,7 @@ To find information about supported submodels and there version in SDE please vi
| **part_as_planned** |Table used to Store Date about Part As Planned. | **Primary Key**:UUID |
| **single_level_bom_as_planned** |Data about the relationship of part As Planned to its child-components. | **Primary Key**:parent_catenax_id, child_catenax_id |
| **part_site_information_as_planned** |Table used to Store Date about Part Site Information As Planned. | **Primary Key**:UUID |
-| **contract_negotiation_info** |Tables Contains Cntract Negotiotion Info and offerid | **Primary Key**: connector_id, offer_id |
+| **contract_negotiation_info** |Tables Contains Contract Negotiation Info and offerid | **Primary Key**: connector_id, offer_id |
| **failure_log** |Table Contains Data About Failure Entries | **Primary Key**:UUID |
| **Flyway_Schema_History** |Table Contains data Migration History | **Primary Key**:installed_rank |
| **Process_Report** |Table Contains status of Processing upload | **Primary Key**:process_id |
@@ -160,20 +282,13 @@ The scripts are in the folder: resources/flyway.
File naming: Vx__script_name.sql, where x is the version number.
When there is a need to change the last script, it is necessary to create a new script with the changes.
-Link to flyway documentation: [Documentation](https://flywaydb.org/documentation/)
+Link to flyway documentation: [Documentation](https://flywaydb.org/documentation/).
## API authentication
Authentication for the backend is handled via an API Key. This can be set in the configuration file.
-## ArgoCD
-The latest version on main is automatically picked up by ArgoCD and deployed to the environment using Helm charts.
-
- helm repo add catenax-ng-product-dft-backend https://github.com/catenax-ng/product-dft-backend/tree/main/charts
-
- helm install release-name catenax-ng/product-dft-backend
-
### EDC
-GitHub repository with correct version of the Eclipse DataSpace Connector Project: [repository](https://github.com/catenax-ng/product-edc)
+GitHub repository with correct version of the Eclipse DataSpace Connector Project: [repository](https://github.com/eclipse-tractusx/tractusx-edc).
### Licenses
-Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0)
+Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
\ No newline at end of file
diff --git a/build/Dockerfile b/build/Dockerfile
index 9ac55cad5..d4825d05f 100644
--- a/build/Dockerfile
+++ b/build/Dockerfile
@@ -1,13 +1,9 @@
# our base build image
-#FROM maven:3.8.5-openjdk-18-slim as build
FROM maven:3.9.0-eclipse-temurin-19 as build
# copy the project files
COPY ../pom.xml ./pom.xml
-# build all dependencies
-#RUN mvn dependency:go-offline -B
-
# copy your other files
COPY ../modules ./modules
@@ -15,21 +11,17 @@ COPY ../modules ./modules
RUN mvn clean install
# our final base image
-#FROM eclipse-temurin:19.0.1_10-jre
FROM eclipse-temurin:19-jdk-jammy
ARG USERNAME=dftuser
-ARG USER_UID=1000
+ARG USER_UID=1001
ARG USER_GID=$USER_UID
# Create the user
-RUN groupadd --gid $USER_GID $USERNAME \
- && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
- && apt-get update \
- && apt-get install -y sudo \
- && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
- && chmod 0440 /etc/sudoers.d/$USERNAME
+
+RUN useradd -rm -d /home/dftuser -s /bin/bash -u $USER_UID -U $USERNAME
+
USER $USERNAME
@@ -40,13 +32,8 @@ WORKDIR /home/user/dftuser/dftapp
COPY --from=build modules/sde-core/target/*.jar ./app.jar
-#RUN chown ${UID}:${GID} /dft
-
-#USER ${UID}:${GID}
-
EXPOSE 8080
# set the startup command to run your binary
-#CMD ["java", "-jar", "./app.jar"]
CMD ["java", "-jar", "./app.jar","--spring.config.location=file:/app/configuration.properties"]
diff --git a/charts/README.md b/charts/README.md
index 957e08193..2bbbdda72 100644
--- a/charts/README.md
+++ b/charts/README.md
@@ -1,43 +1,293 @@
-# Helm Charts for DFT Backend
+ # Simple Data Exchanger (formally known Data Format Transformer)
+---
+## Description
-This chart bootstraps a DFT deployment on a Kubernetes cluster using the Helm package manager.
+This repository is part of the overarching Catena-X project. It contains the Backend for the SDE/DFT.
+SDE Simple data exchanger(formally known DFT is short for Data Format Transformer)
+It is a standalone service which can be self-hosted.
+It enables companies to provide their data in the Catena-X network via an EDC.
-## Dependency Charts
+## Important !!!
+### Deployment of SDE backend
+The Auto-Setup is the central service orchestration component. The Auto-Setup hide all complex configuration properties for you and get SDE Backend as well as Frontend service deployed for you as service. The Auto-Setup taking all deployment through their specific helm charts. The Auto-Setup knows which prerequisites and which configurations are required for the components and creates them. All dependencies and any error messages are intercepted by Auto-Setup and treated correctly and meaningfully. Therefore, Auto-Setup meets your requirements exactly.
-This helm chart is an umbrella chart that pulls together engine specific charts. The engine charts are included as dependencies in Chart.yaml.
-We have added PostgresSQL bitnami image as a Dependency.
+Once SDE deployed, The data is uploaded via CSV-files or tabular entry. The SDE registers the data in the Digital Twin Registry and makes it accessible via an EDC.
+The SDE project has three dependencies: Digital Twins, Portal and EDC.
+## How to run
-## Repository Structure
+SDE is a SpringBoot Java Maven software project.
-This GitHub repository contains the source for the packaged and versioned charts released using GitHub pages (the Chart Repository).
+When running, the project requires a postgresql database to be available to connect.
+You can find the standard require configuration keys as below:
-The Charts in the charts/ directory in the master branch of this repository match the latest packaged Chart in the Chart Repository.
+### Configuration
-## Helm Release
-
-Provides simple semantic versioning based from previous git tags. You can run the chart-release-fe.yml workflow to create new release.
+Listed below are configuration keys needed to get the `sde-backend` up and running.
-## Helm Chart Templates
+| Key | Required | Example | Description |
+|--- |--- |--- |--- |
+| keycloak.clientid | X | sdeclientId | This is keycloak clienId/resource |
+| spring.security.oauth2.resourceserver.jwt.issuer-uri | X | https://ids.issuer.com/auth/realms/master | Url of Keycloak issuer uri |
+| management.endpoint.health.probes.enabled | X | true | Default value, no need to change |
+| management.health.readinessstate.enabled | X | true | Default value, no need to change |
+| management.health.livenessstate.enabled | X | true | Default value, no need to change |
+| management.endpoints.web.exposure.include | X | * | Default value, no need to change |
+| spring.lifecycle.timeout-per-shutdown-phase | X | 30s | Default value, no need to change |
+| logging.level.org.springframework.security.web.csrf | X | INFO | Default value, no need to change |
+| logging.level.org.apache.http | X | info | Default value, no need to change |
+| logging.level.root | X | info | Default value, no need to change |
+| file.upload-dir | X | ./temp/ | Default value, no need to change |
+| spring.servlet.multipart.enabled | X | true | Default value, no need to change |
+| spring.main.allow-bean-definition-overriding | X | true | Default value, no need to change |
+| spring.servlet.multipart.file-size-threshold | X | 2KB | Default value, no need to change |
+| spring.servlet.multipart.max-file-size | X | 200MB | Default value, no need to change |
+| spring.servlet.multipart.max-request-size | X | 215MB | Default value, no need to change |
+| server.servlet.context-path | X | /api | Default value, no need to change |
+| spring.flyway.baseline-on-migrate | X | true | Default value, no need to change |
+| spring.flyway.locations | X | classpath:/flyway | Default value, no need to change |
+| spring.datasource.driver-class-name | X | org.postgresql.Driver | Default value, no need to change |
+| spring.datasource.url | X | jdbc:postgres//dbserver.com:5432/db | Your database server details |
+| spring.datasource.username | X | | Your database password |
+| spring.datasource.password | X | | Your database password |
+| spring.jpa.hibernate.ddl-auto | | update | Default value, no need to change |
+| spring.jpa.open-in-view | | false | Default value, no need to change |
+| digital-twins.hostname | X | https://example.digitaltwin.com | Digital twin registry url |
+| digital-twins.authentication.url | X | http://ex*.keycloak.com/auth/realms/default | Digital twin registry auth url |
+| digital-twins.authentication.clientId | X | your clientId | Digital twin registry clientId |
+| digital-twins.authentication.clientSecret | X | your secrete | Digital twin registry secrete |
+| digital-twins.authentication.grantType | X | client_credentials | Default value, no need to change |
+| edc.hostname | X | https://example.provider-connector.com | Your EDC provider connector url |
+| edc.apiKeyHeader | X | x-api-key | Your connector api key |
+| edc.apiKey | X | yourpass | Your connector apikey value |
+| edc.consumer.hostname | X | https://example.consumer-connector.com | Your EDC consumer connector |
+| edc.consumer.apikeyheader | X | x-api-key | Your connector api key |
+| edc.consumer.apikey | X | yourpass | Your connector apikey value |
+| edc.consumer.datauri | X | /api/v1/ids/data | IDS endpoint path |
+| dft.hostname | X | https://example.sdehost.com | Your SDE hostname |
+| dft.apiKeyHeader | X | API_KEY | Your default key |
+| dft.apiKey | X | yourpass | Your default key password |
+| manufacturerId | X | default | Your CX partner BPN number |
+| partner.pool.hostname | X | default | url to get legal-entity information|
+| connector.discovery.token-url | X | https://example.portal.backend.com | Portal backend AuthURL |
+| connector.discovery.clientId | X | default | client ID for connector discovery |
+| connector.discovery.clientSecret | X | default | password for connector discovery |
+| portal.backend.hostname | X | default | Portal backend svc URL based on BPN|
+| springdoc.api-docs.path | X | /api-docs | swagger API path |
-The templates require your application to built into a Docker image. The Docker Templates project provides assistance in creating an image for your application.
+#### Example Configuration/application.properties
-This project provides the following files:
+```
+keycloak.clientid=sdeclientId
+spring.security.oauth2.resourceserver.jwt.issuer-uri=https://ids.issuer.com/auth/realms/master
+management.endpoint.health.probes.enabled=true
+management.health.readinessstate.enabled=true
+management.health.livenessstate.enabled=true
+management.endpoints.web.exposure.include=*
+spring.lifecycle.timeout-per-shutdown-phase=30s
-| File | Description |
-|---------------------------------------------------|-----------------------------------------------------------------------|
-| `/charts/dft-backend/Chart.yaml` | The definition file for your application |
-| `/charts/dft-backend/values.yaml` | Configurable values that are inserted into the following template files
-| `/charts/dft-backend/values-int.yaml` | Configurable values for int env |
-| `/charts/dft-backend/templates/deployment.yaml` | Template to configure your application deployment. |
-| `/charts/dft-backend/templates/ingress.yaml` | Template to configure your application deployment. |
-| `/charts/dft-backend/templates/service.yaml` | Template to configure your application deployment. |
-| `/charts/dft-backend/templates/hpa.yaml` | Template to configure your application deployment. |
-| `/charts/dft-backend/templates/NOTES.txt` | Helper to enable locating your application IP and PORT |
+#provider your logging level
+logging.level.org.springframework.security.web.csrf=INFO
+logging.level.org.apache.http=info
+logging.level.root=info
-## Helm Commands
-$ helm repo add catenax-ng-product-dft-backend https://github.com/catenax-ng/product-dft-backend/tree/main/charts
+#default spring boot configuration not need to change
+file.upload-dir=./temp/
+spring.servlet.multipart.enabled=true
+spring.main.allow-bean-definition-overriding=true
+spring.servlet.multipart.file-size-threshold=2KB
+spring.servlet.multipart.max-file-size=200MB
+spring.servlet.multipart.max-request-size=215MB
-$ helm install my-release catenax-ng/product-dft-backend --version 1.5.0
+#API context path to access application apis
+server.servlet.context-path=/api
+
+#Database and flyway details, the database will
+spring.flyway.baseline-on-migrate=true
+spring.flyway.locations=classpath:/flyway
+spring.datasource.driver-class-name=org.postgresql.Driver
+spring.datasource.url=jdbc:postgres//dbserver.com:5432/dftdb #your database server details
+spring.datasource.username=your database password
+spring.datasource.password=your database password
+spring.jpa.hibernate.ddl-auto=update
+spring.jpa.open-in-view=false
+
+#Provide digital twin registry details which SDE should use to create twin for your,
+#The need technical user details depend on digital twin security configuration
+digital-twins.hostname=https://example.digitaltwin.com
+digital-twins.authentication.url=http://example.keycloak.com/auth/realms/default
+digital-twins.authentication.clientId=your clientId
+digital-twins.authentication.clientSecret=your secrete
+digital-twins.authentication.grantType=client_credentials
+
+#The EDC connector information which SDE should use As Data provider connector
+edc.hostname=https://example.provider-connector.com
+edc.apiKeyHeader=your connector api key
+edc.apiKey=your connector apikey value
+
+#The EDC connector information which SDE should use As Data consumer connector
+edc.consumer.hostname=https://example.consumer-connector.com
+edc.consumer.apikeyheader=your connector api key
+edc.consumer.apikey=your connector apikey value
+edc.consumer.datauri=/api/v1/ids/data
+
+#Your Own SDE host url which will share with EDC connector as data address proxy
+dft.hostname=https://example.sdehost.com
+dft.apiKeyHeader=your default key
+dft.apiKey=your default key password
+
+#Your company BPN number
+manufacturerId=default
+
+#Portal pool hostname url to use discover legal company information in SDE
+partner.pool.hostname=default
+
+#Portal backend url for get connector list based on BPN number
+connector.discovery.token-url=https://example.portal.backend.com
+connector.discovery.clientId=default
+connector.discovery.clientSecret=default
+portal.backend.hostname=default
+springdoc.api-docs.path=/api-docs
+```
+
+The above configuration we can use as for different deployment as specified here [InstallationGuide.md](InstallationGuide.md)
+
+---
+### Supported submodules
+To find information about supported submodules and there version in SDE please visit [here](modules/sde-submodules/submodules.md)
+
+---
+
+## DFT(Simple Data Exchanger) Compatible with :=
+1. ***File Uploads***
+ * SerialPartTypization
+ * AssemblyPartRelationship
+ * Batch
+ * PartAsPlanned
+ * SingleLevelBoMAsPlanned
+ * PartSiteInformationAsPlanned
+ * SingleLevelUsageAsBuilt
+2. ***Json Update***
+ * SerialPartTypization
+ * AssemblyRelationship
+ * Batch
+ * PartAsPlanned
+ * SingleLevelBoMAsPlanned
+ * PartSiteInformationAsPlanned
+ * SingleLevelUsageAsBuilt
+3. ***Application UI***
+ * SerialPartTypization
+ * AssemblyRelationship
+ * Batch
+ * PartAsPlanned
+ * SingleLevelBoMAsPlanned
+ * PartSiteInformationAsPlanned
+ * SingleLevelUsageAsBuilt
+
+
+ ---
+## RESTful APIs OF DFT (Simple Data Exchanger)
+
+###### ***Note: API_KEY, AUTHORIZATION TOKEN Required as Headers***
+---
+| API | Description | Request body | Response body |
+| ------ | ------ | ------ | ------ |
+| **GET:- localhost:8080/api/submodels** |This API is used to get all submodels list which is implemented/supported by SDE | Refer Api Doc | Refer Api Doc |
+| **GET:- localhost:8080/api/submodels/schema-details** |This API is used to get schema details of submodels which is implemented/supported by SDE | Refer Api Doc | Refer Api Doc |
+| **GET:- localhost:8080/api/submodels/{submodelName}** |This API is used to get the schema data of specific model | Refer Api Doc | Refer Api Doc |
+| **POST:- localhost:8080/api/{submodel}/upload** |This API is used to uploading data From CSV file for particular selected submodel | Refer Api Doc |4ca03d5f-9e37-4c12-a8b8-6583b81892c8 |
+| **POST:- localhost:8080/api/{submodel}/manualentry** |This API is used for uploading data From JSon/Tabular form | Refer Api Doc | 4ca03d5f-9e37-4c12-a8b8-6583b81892c8 |
+| **GET:- localhost:8080/api/{submodel}/public/{uuid}** |This API is used for to get the specific submodel data | Refer Api Doc | Refer Api Doc |
+| **DELETE:- localhost:8080/api/{submodel}/delete/{processId}** |This API is used to delete processed data from EDC and DigitalTwins | Refer Api Doc | Refer Api Doc |
+| **GET:- localhost:8080/api/role/{role}/permissions** |This API is used to fetch all permissions associate with particular role | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/user/role/permissions** |This API is used to fetch all list of permissions | Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/role/{role}/permissions** |This API is used to apply list of permissions to the specific role | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/processing-report/87d0aece-ae46-4006-904d-9ec41cddee8b** |This API Is Used For fetch Process Report by Process ID| Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/ping** |This API Is Used For Health Check| -- |2022-09-30T16:21:02.630868|
+| **GET:- localhost:8080/api/processing-report?page=&pageSize=50** |This API Is Used For fetch Process Report| Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/query-data-offers** |This API is used to fetch all data offers of provider URL | Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/subscribe-data-offers** |This API is used to subscribe data offers | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/contract-offers** |This API is used to get all contract offers | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/legal-entities** |This API is used to fetch legal entities (list of company's) for Process| Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/connectors-discovery** |This API is used to fetch connector's information | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/submodels** |This API is used to get all submodels list which is implemented/supported by SDE | Refer Api Doc | Refer Api Doc |
+| **GET:- localhost:8080/api/submodels/{submodelName}** |This API is used to get the schema data of specific model | Refer Api Doc | Refer Api Doc |
+| **POST:- localhost:8080/api/{submodel}/upload** |This API is used to uploading data From CSV file for particular selected submodel | Refer Api Doc |4ca03d5f-9e37-4c12-a8b8-6583b81892c8 |
+| **POST:- localhost:8080/api/{submodel}/manualentry** |This API is used for uploading data From JSon/Tabular form | Refer Api Doc | 4ca03d5f-9e37-4c12-a8b8-6583b81892c8 |
+| **GET:- localhost:8080/api/{submodel}/public/{uuid}** |This API is used for to get the specific submodel data | Refer Api Doc | Refer Api Doc |
+| **DELETE:- localhost:8080/api/{submodel}/delete/{processId}**|This API is used to delete processed data from EDC and DigitalTwins | Refer Api Doc | Refer Api Doc |
+| **GET:- localhost:8080/api/role/{role}/permissions** |This API is used to fetch all permissions associate with particular role | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/user/role/permissions** |This API is used to fetch all list of permissions | Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/role/{role}/permissions** |This API is used to apply list of permissions to the specific role | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/processing-report/87d0aece-ae46-4006-904d-9ec41cddee8b** |This API Is Used For fetch Process Report by Process ID| Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/ping** |This API Is Used For Health Check| -- |2022-09-30T16:21:02.630868|
+| **GET:- localhost:8080/api/processing-report?page=&pageSize=50** |This API Is Used For fetch Process Report| Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/query-data-offers** |This API is used to fetch all data offers of provider URL | Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/subscribe-data-offers** |This API is used to subscribe data offers | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/contract-offers** |This API is used to get all contract offers | Refer Api Doc |Refer Api Doc|
+| **GET:- localhost:8080/api/legal-entities** |This API is used to fetch legal entities (list of company's) for Process| Refer Api Doc |Refer Api Doc|
+| **POST:- localhost:8080/api/connectors-discovery** |This API is used to fetch connectors information | Refer Api Doc |Refer Api Doc|
+
+
+---
+#### **Response Status**
+---
+### SUCCESS RESPONSE CODES:
+| Code | DESCRIPTION |
+| ------ | ------ |
+| 200 OK | Indicates that the request has succeeded. |
+| 201 Created | Indicates that the request has succeeded and a new resource has been created as a result. |
+| 202 Accepted | Indicates that the request has been received but not completed yet |
+| 204 No Content | The server has fulfilled the request but does not need to return a response body. The server may return the updated meta information.|
+
+
+### ERROR RESPONSE CODES:
+| Code | DESCRIPTION |
+| ------ | ------ |
+|400 Bad Request | The request could not be understood by the server due to incorrect syntax. |
+|401 Unauthorized | Indicates that the request requires user authentication information. |
+|403 Forbidden| Unauthorized request. |
+|404 Not Found| The server can not find the requested resource. |
+|405 Method Not Allowed| The request HTTP method is known by the server but has been disabled and cannot be used for that resource |
+|500 Internal Server Error| The server encountered an unexpected condition that prevented it from fulfilling the request.|
+|502 Bad Gateway | The server got an invalid response while working as a gateway to get the response needed to handle the request.|
+|503 Service Unavailable | The server is not ready to handle the request.|
+|504 Gateway Timeout|The server is acting as a gateway and cannot get a response in time for a request. |
+
+---
+## Database
+| Tables | Description | Unique Id |
+| ------ | ------ | ------ |
+| **aspect** | Table used to Store Date About Serialized Part | **Primary Key**:UUID |
+| **aspect_relationship** |Data about the relationship of parts to its child-components. | **Primary Key**:parent_catenax_id, child_catenax_id |
+| **batch** |Table used to Store Date about Serialized Part. | **Primary Key**:UUID |
+| **part_as_planned** |Table used to Store Date about Part As Planned. | **Primary Key**:UUID |
+| **single_level_bom_as_planned** |Data about the relationship of part As Planned to its child-components. | **Primary Key**:parent_catenax_id, child_catenax_id |
+| **part_site_information_as_planned** |Table used to Store Date about Part Site Information As Planned. | **Primary Key**:UUID |
+| **contract_negotiation_info** |Tables Contains Contract Negotiation Info and offerid | **Primary Key**: connector_id, offer_id |
+| **failure_log** |Table Contains Data About Failure Entries | **Primary Key**:UUID |
+| **Flyway_Schema_History** |Table Contains data Migration History | **Primary Key**:installed_rank |
+| **Process_Report** |Table Contains status of Processing upload | **Primary Key**:process_id |
+| **sde_role** |Table Contains list of roles | **Primary Key**:sde_role |
+| **sde_permission** |Table Contains list of permissions | **Primary Key**:sde_permission |
+| **sde_role_permission_mapping** |Table Contains mapping of role with permissions | **Primary Key**:sde_role, sde_permission |
+| **single_level_usage_as_built** |Data about the relationship of parts to its child-components. | **Primary Key**:parent_catenax_id, child_catenax_id |
+
+---
+## flyway
+The scripts are in the folder: resources/flyway.
+File naming: Vx__script_name.sql, where x is the version number.
+When there is a need to change the last script, it is necessary to create a new script with the changes.
+
+Link to flyway documentation: [Documentation](https://flywaydb.org/documentation/).
+
+## API authentication
+Authentication for the backend is handled via an API Key. This can be set in the configuration file.
+
+### EDC
+GitHub repository with correct version of the Eclipse DataSpace Connector Project: [repository](https://github.com/eclipse-tractusx/tractusx-edc).
+
+### Licenses
+Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
\ No newline at end of file
diff --git a/charts/dftbackend/Chart.yaml b/charts/dftbackend/Chart.yaml
index b7cbeb625..2a2f55a8a 100644
--- a/charts/dftbackend/Chart.yaml
+++ b/charts/dftbackend/Chart.yaml
@@ -1,7 +1,6 @@
#################################################################################
-
-# Copyright (c) 2021,2022 Contributors to the Eclipse Foundation
-# Copyright (c) 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
@@ -18,7 +17,6 @@
#
# SPDX-License-Identifier: Apache-2.0
################################################################################
-
apiVersion: v2
name: dftbackend
description: A Helm chart for Kubernetes
@@ -39,13 +37,13 @@ sources:
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 1.9.1
+version: 2.0.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
-appVersion: "1.9.1"
+appVersion: "2.0.0"
dependencies:
- condition: dftpostgresql.enabled
diff --git a/charts/dftbackend/README.md b/charts/dftbackend/README.md
index 7a6a83afd..b8192c9ee 100644
--- a/charts/dftbackend/README.md
+++ b/charts/dftbackend/README.md
@@ -8,6 +8,8 @@ This chart bootstraps a DFT deployment on a Kubernetes cluster using the Helm pa
This helm chart is an umbrella chart that pulls together engine specific charts. The engine charts are included as dependencies in Chart.yaml.
We have added PostgresSQL bitnami image as a Dependency.
+
+
## Repository Structure
This GitHub repository contains the source for the packaged and versioned charts released using GitHub pages (the Chart Repository).
@@ -25,17 +27,18 @@ The templates require your application to built into a Docker image. The Docker
This project provides the following files:
| File | Description |
-|----------------------------------------------------|-------------------------------------------------------------------------|
+|--------------------------------------------------- |----------------------------------------------------------------------- |
| `/charts/dftbackend/Chart.yaml` | The definition file for your application |
| `/charts/dftbackend/values.yaml` | Configurable values that are inserted into the following template files |
-| `/charts/dftbackend/templates/configmap.yaml` | Configurable values for int env |
+| `/charts/dftbackend/values-int.yaml` | Configurable values for int env |
| `/charts/dftbackend/templates/deployment.yaml` | Template to configure your application deployment. |
| `/charts/dftbackend/templates/ingress.yaml` | Template to configure your application deployment. |
| `/charts/dftbackend/templates/service.yaml` | Template to configure your application deployment. |
| `/charts/dftbackend/templates/hpa.yaml` | Template to configure your application deployment. |
-| `/charts/dftbackend/templates/serviceaccount.yaml` | Helper to enable locating your application IP and PORT |
+| `/charts/dftbackend/templates/NOTES.txt` | Helper to enable locating your application IP and PORT |
## Helm Commands
$ helm repo add eclipse-tractusx-dft-backend https://github.com/eclipse-tractusx/dft-backend/tree/main/charts
-$ helm install my-release eclipse-tractusx/dftbackend --version 1.9.0
+$ helm install my-release eclipse-tractusx/dftbackend --version 2.0.0
+
diff --git a/charts/dftbackend/templates/configmap.yaml b/charts/dftbackend/templates/configmap.yaml
index b172bbe4f..afd99f4be 100644
--- a/charts/dftbackend/templates/configmap.yaml
+++ b/charts/dftbackend/templates/configmap.yaml
@@ -1,3 +1,22 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
apiVersion: v1
kind: ConfigMap
metadata:
diff --git a/charts/dftbackend/templates/deployment.yaml b/charts/dftbackend/templates/deployment.yaml
index 64024ffa5..09b3d5ada 100644
--- a/charts/dftbackend/templates/deployment.yaml
+++ b/charts/dftbackend/templates/deployment.yaml
@@ -1,6 +1,6 @@
#################################################################################
-# Copyright (c) 2021,2022 Catena-X
-# Copyright (c) 2021,2022 Contributors to the Eclipse Foundation
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
diff --git a/charts/dftbackend/templates/hpa.yaml b/charts/dftbackend/templates/hpa.yaml
index 0dba3b71f..2fe6cb54e 100644
--- a/charts/dftbackend/templates/hpa.yaml
+++ b/charts/dftbackend/templates/hpa.yaml
@@ -1,3 +1,23 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
+---
{{- if .Values.autoscaling.enabled }}
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
diff --git a/charts/dftbackend/templates/ingress.yaml b/charts/dftbackend/templates/ingress.yaml
index 82570b492..25aa22640 100644
--- a/charts/dftbackend/templates/ingress.yaml
+++ b/charts/dftbackend/templates/ingress.yaml
@@ -1,3 +1,22 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
{{- $fullName := include "dftbackend.fullname" . }}
{{- $labels := include "dftbackend.labels" . | nindent 4 }}
{{- $gitVersion := .Capabilities.KubeVersion.GitVersion }}
diff --git a/charts/dftbackend/templates/postgresql-secrets.yaml b/charts/dftbackend/templates/postgresql-secrets.yaml
index 58c752a29..bfc903245 100644
--- a/charts/dftbackend/templates/postgresql-secrets.yaml
+++ b/charts/dftbackend/templates/postgresql-secrets.yaml
@@ -1,3 +1,22 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
apiVersion: v1
kind: Secret
metadata:
diff --git a/charts/dftbackend/templates/service.yaml b/charts/dftbackend/templates/service.yaml
index 57b68f457..0a339747d 100644
--- a/charts/dftbackend/templates/service.yaml
+++ b/charts/dftbackend/templates/service.yaml
@@ -1,3 +1,22 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
apiVersion: v1
kind: Service
metadata:
diff --git a/charts/dftbackend/templates/serviceaccount.yaml b/charts/dftbackend/templates/serviceaccount.yaml
index 62df286f1..842966664 100644
--- a/charts/dftbackend/templates/serviceaccount.yaml
+++ b/charts/dftbackend/templates/serviceaccount.yaml
@@ -1,3 +1,23 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
+---
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
diff --git a/charts/dftbackend/templates/tests/test-connection.yaml b/charts/dftbackend/templates/tests/test-connection.yaml
index 3f725efa0..77cf80e25 100644
--- a/charts/dftbackend/templates/tests/test-connection.yaml
+++ b/charts/dftbackend/templates/tests/test-connection.yaml
@@ -1,3 +1,22 @@
+#################################################################################
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
+#
+# See the NOTICE file(s) distributed with this work for additional
+# information regarding copyright ownership.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Apache License, Version 2.0 which is available at
+# https://www.apache.org/licenses/LICENSE-2.0.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+################################################################################
apiVersion: v1
kind: Pod
metadata:
diff --git a/charts/dftbackend/values.yaml b/charts/dftbackend/values.yaml
index 2fbe7b855..db7f94acd 100644
--- a/charts/dftbackend/values.yaml
+++ b/charts/dftbackend/values.yaml
@@ -1,7 +1,6 @@
#################################################################################
-
-# Copyright (c) 2021,2022 Contributors to the Eclipse Foundation
-# Copyright (c) 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021, 2022, 2023 T-Systems International GmbH
+# Copyright (c) 2021,2022,2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
@@ -68,21 +67,17 @@ dftbackend:
# -- The path mapping the "default" api is going to be exposed at
path: /dftbackend
-ingress:
+ingresses:
- enabled: false
className: "nginx"
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
- hostname: ""
-
+ hostname: ""
endpoints:
- default
-
tls:
-
enabled: true
-
secretName: ""
# -- If present overwrites the default secret name
certManager:
diff --git a/modules/sde-common/src/main/java/org/eclipse/tractusx/sde/common/exception/GlobalDefaultExceptionHandler.java b/modules/sde-common/src/main/java/org/eclipse/tractusx/sde/common/exception/GlobalDefaultExceptionHandler.java
index b01191b48..42ed0cf53 100644
--- a/modules/sde-common/src/main/java/org/eclipse/tractusx/sde/common/exception/GlobalDefaultExceptionHandler.java
+++ b/modules/sde-common/src/main/java/org/eclipse/tractusx/sde/common/exception/GlobalDefaultExceptionHandler.java
@@ -45,28 +45,32 @@ public class GlobalDefaultExceptionHandler extends ResponseEntityExceptionHandle
public static final String DEFAULT_ERROR_VIEW = "error";
@ExceptionHandler(NoDataFoundException.class)
- public ResponseEntity handleNodataFoundException(NoDataFoundException ex, WebRequest request) {
- log.error("NoDataFoundException "+ex.getMessage());
- return new ResponseEntity<>(ex.getMessage(), HttpStatus.NOT_FOUND);
+ public ResponseEntity