From ba7799ff77e20433bfb14bb04c8872b8bf5b5fb7 Mon Sep 17 00:00:00 2001 From: mk Date: Fri, 24 Nov 2023 15:01:24 +0100 Subject: [PATCH 01/37] fix(diagram):[#212] adjust diagram --- ...#212-Update-SingleLevelBomAsBuilt-2-0-0.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md index 99fe418614..a59f75bde1 100644 --- a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md +++ b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md @@ -95,15 +95,15 @@ flowchart LR SingleLevelBomAsBuilt --> s1 s1 --> SerialPart s1 --> SingleLevelBomAsBuilt2 - SingleLevelBomAsBuilt2(SingleLevelBomAsBuilt) --> s4((AAS C-X 2 \n hasAlternatives=false)) + SingleLevelBomAsBuilt2[SingleLevelBomAsBuilt] --> s4((AAS C-X 2 \n hasAlternatives=false)) s4 --> SerialPart3(SerialPart) - s4 --> SerialPart5(SingleLevelBomAsBuilt2.0.0) + s4 --> SingleLevelBomAsBuilt5[SingleLevelBomAsBuilt2.0.0] SingleLevelBomAsBuilt2 --> s5((AAS C-X 3 \n hasAlternatives=false)) s5 --> SerialPart2(SerialPart) - s5 --> SerialPart4(SingleLevelBomAsBuilt2.0.0) + s5 --> SingleLevelBomAsBuilt7[SingleLevelBomAsBuilt2.0.0] ``` -## SingleLevelBomAsBuilt childItems contains asPlanned aspects hasAlternatives=false +## SingleLevelBomAsBuilt childItems contains asPlanned aspects hasAlternatives=true 1. IRS traversal using SingleLevelBomAsBuilt 2. Traversal Aspect: SingleLevelBomAsBuilt @@ -142,7 +142,7 @@ flowchart LR title: SingleLevelBomAsBuilt2 childItems contains asPlanned aspects hasAlternatives=false --- flowchart LR - s1((AAS C-X 1 \n hasAlternatives=true)) + s1((AAS C-X 1 \n hasAlternatives=false)) s2((AAS C-X 2 \n hasAlternatives=true)) s3((AAS C-X 3 \n hasAlternatives=true)) SingleLevelBomAsBuilt[SingleLevelBomAsBuilt2.0.0] @@ -158,7 +158,7 @@ flowchart LR s3 --> stop2{stop processing} s1 --> SingleLevelBomAsBuilt3[SingleLevelBomAsBuilt] - s1 --> p3[SerialPart] + s1 --> p3(SerialPart) SingleLevelBomAsBuilt3 --> s4((AAS C-X 4)) classDef asPlanned fill: #9f6,stroke: #333, stroke-width: 2px; @@ -183,11 +183,11 @@ title: SingleLevelBomAsBuilt2 childItems contains combination of hasAlternatives --- flowchart LR s1((AAS C-X 1 \n hasAlternatives=false)) - s2((AAS C-X 2 \n hasAlternatives=true \n Batch #1)) - s3((AAS C-X 3 \n hasAlternatives=true \n Batch #2)) + s2((AAS C-X 2 \n hasAlternatives=true)) + s3((AAS C-X 3 \n hasAlternatives=true)) SingleLevelBomAsBuilt[SingleLevelBomAsBuilt2.0.0] - aas((AAS OEM)) --> SingleLevelBomAsBuilt + aas((AAS OEM)) --> SingleLevelBomAsBuilt[SingleLevelBomAsBuilt] SingleLevelBomAsBuilt --> s1 SingleLevelBomAsBuilt --> s2 SingleLevelBomAsBuilt --> s3 @@ -196,8 +196,8 @@ flowchart LR s3 --> SingleLevelBomAsBuilt5[SingleLevelBomAsBuilt] s1 --> SerialPart3(SerialPart) - s2 --> SerialPart4(SerialPart) - s3 --> SerialPart5(SerialPart) + s2 --> SerialPart4(Batch) + s3 --> SerialPart5(Batch) SingleLevelBomAsBuilt3 --> AAS5((AAS)) SingleLevelBomAsBuilt4 --> AAS6((AAS)) From 75361b616c63663d4cfe8de171f1850cabdf7133 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 27 Nov 2023 14:19:59 +0100 Subject: [PATCH 02/37] docs(ess):[#209] Improve ESS admin manual documentation --- charts/irs-helm/CHANGELOG.md | 3 +++ charts/irs-helm/templates/configmap-spring-app-config.yaml | 2 +- charts/irs-helm/values.yaml | 4 ++-- irs-api/src/main/resources/application.yml | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/charts/irs-helm/CHANGELOG.md b/charts/irs-helm/CHANGELOG.md index a00af20634..92c609d095 100644 --- a/charts/irs-helm/CHANGELOG.md +++ b/charts/irs-helm/CHANGELOG.md @@ -5,6 +5,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- Rename property `edc.provider.host` to `ess.edc.host` + ### Fixed - Fixed templating for `management.health.dependencies` diff --git a/charts/irs-helm/templates/configmap-spring-app-config.yaml b/charts/irs-helm/templates/configmap-spring-app-config.yaml index 5c56bec786..5ff6169b67 100644 --- a/charts/irs-helm/templates/configmap-spring-app-config.yaml +++ b/charts/irs-helm/templates/configmap-spring-app-config.yaml @@ -118,7 +118,7 @@ data: cacheTTL: {{ .Values.edc.connectorEndpointService.cacheTTL | quote }} ess: localBpn: {{ tpl (.Values.bpn | default "") . | quote }} - localEdcEndpoint: {{ tpl (.Values.edc.provider.host | default "") . | quote }} + localEdcEndpoint: {{ tpl (.Values.ess.edc.host | default "") . | quote }} managementPath: {{ tpl (.Values.ess.managementPath | default "/management/v2") . | quote }} irs: url: {{ tpl (.Values.irsUrl | default "") . | quote }} diff --git a/charts/irs-helm/values.yaml b/charts/irs-helm/values.yaml index 573713e871..b7fee13259 100644 --- a/charts/irs-helm/values.yaml +++ b/charts/irs-helm/values.yaml @@ -159,8 +159,6 @@ portal: clientId: # clientSecret: # edc: - provider: - host: # EDC Provider Host URL controlplane: endpoint: data: "" # @@ -208,6 +206,8 @@ discovery: oAuthClientId: portal # ID of the OAuth2 client registration to use, see config spring.security.oauth2.client ess: + edc: + host: # EDC base URL - used for creation of EDC assets for ESS notifications and as sender EDC for sent notifications mockEdcResult: # Map of BPNs and YES/NO strings - this configures the ESS mock response in case it called to investigate a BPN mockRecursiveEdcAsset: # List of BPNs for which the special, mocked notification asset should be used managementPath: "/management/v2" # EDC management API path - used for notification asset creation diff --git a/irs-api/src/main/resources/application.yml b/irs-api/src/main/resources/application.yml index cc5bf4150f..78b54d4787 100644 --- a/irs-api/src/main/resources/application.yml +++ b/irs-api/src/main/resources/application.yml @@ -222,7 +222,7 @@ bpdm: # ESS Module specific properties ess: localBpn: ${ESS_LOCAL_BPN:} # BPN value of product - used during EDC notification communication - localEdcEndpoint: ${EDC_PROVIDER_URL:} # EDC Provider Url - used during EDC notification communication + localEdcEndpoint: ${ESS_EDC_URL:} # EDC base URL - used for creation of EDC assets for ESS notifications and as sender EDC for sent notifications managementPath: ${EDC_MANAGEMENT_PATH:/management/v2} # EDC management API path - used for notification asset creation irs: url: "${IRS_URL:}" # IRS Url to connect with From 8ee60f7a50707cfcd58a683a91bab6cca8715091 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 27 Nov 2023 14:21:41 +0100 Subject: [PATCH 03/37] docs(installation):[#209] Fix broken links --- DataChainKit.md | 6 +++--- INSTALL.md | 14 +++++++------- README.md | 47 +++++++++++++++++++++++++++++------------------ 3 files changed, 39 insertions(+), 28 deletions(-) diff --git a/DataChainKit.md b/DataChainKit.md index a5f937f13b..8ed6308b74 100644 --- a/DataChainKit.md +++ b/DataChainKit.md @@ -16,14 +16,14 @@ The Item Relationship Service (IRS) is the first reference application of the Da ### Requirements The IRS needs to be deployed with the following components in the same environment: -- [Eclipse Dataspace Connector](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector) +- [Eclipse Dataspace Connector](https://github.com/eclipse-tractusx/tractusx-edc) -The Service interacts with the Catena-X [Digital Twin Registry](https://catena-x.net/en/angebote/digitaler-zwilling) and is built upon the Catena-X Semantic Models which are stored in the [Semantic Hub](https://catena-x.net/en/angebote/digitaler-zwilling). +The Service interacts with the Catena-X [Digital Twin Registry](https://github.com/eclipse-tractusx/sldt-digital-twin-registry) and is built upon the Catena-X Semantic Models which are stored in the [Semantic Hub](https://github.com/eclipse-tractusx/sldt-semantic-hub). ### Tools and documentation - 🖥 Item Relationship Service Video -- 📄 [Item Relationship Service Product Page](https://catena-x.net/en/angebote/item-relationship-service) +- 📄 [Item Relationship Service Product Page](https://catena-x.net/en/offers-standards/item-relationship-service) - 📄 [Item Relationship Service Documentation](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/README.md) - 📄 [IRS REST API Documentation](https://eclipse-tractusx.github.io/item-relationship-service/docs/api-specification/api-specification.html) - 📄 Catena-X Kit's diff --git a/INSTALL.md b/INSTALL.md index e56ca69744..0dd04e0ead 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -10,11 +10,11 @@ Everything else needs to be provided externally. ## Data Chain Kit You can use the Data Chain Kit to deploy the whole demo scenario with all participating components. -Instructions can be found here: [Data Chain Kit](https://eclipse-tractusx.github.io/docs/kits/Data%20Chain%20Kit/Operation%20View/). +Instructions can be found here: [Data Chain Kit](https://eclipse-tractusx.github.io/docs-kits/kits/Data%20Chain%20Kit/Operation%20View). ## Installation -The IRS Helm repository can be found here: [https://eclipse-tractusx.github.io/item-relationship-service/index.yaml](https://eclipse-tractusx.github.io/docs/kits/Data%20Chain%20Kit/Operation%20View/) +The IRS Helm repository can be found here: [index.yaml](https://eclipse-tractusx.github.io/item-relationship-service/index.yaml) Use the latest release of the "irs-helm" chart. It contains all required dependencies. @@ -44,10 +44,10 @@ Or create a new Helm chart and use the IRS as a dependency. dependencies: - name: irs-helm repository: https://eclipse-tractusx.github.io/item-relationship-service - version: 3.x.x - - name: irs-edc-consumer # optional - repository: https://eclipse-tractusx.github.io/item-relationship-service - version: 1.x.x + version: 6.x.x + - name: tractusx-connector + repository: https://eclipse-tractusx.github.io/tractusx-edc + version: 0.5.x ``` Then provide your configuration as the values.yaml of that chart. @@ -62,4 +62,4 @@ A detailed instruction on how to configure the IRS and EDC can be found here: [A IRS provides a local setup which can be deployed to kubernetes. This setup includes all third-party services which IRS uses and interacts with. -Instructions can be found here [README.md](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/local/deployment/full-irs/README.md). \ No newline at end of file +Instructions can be found here [README.md](README.md). \ No newline at end of file diff --git a/README.md b/README.md index 3fc6f1f816..843f0d2a78 100644 --- a/README.md +++ b/README.md @@ -12,26 +12,28 @@ [![OWASP Dependency Check](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/owasp.yml/badge.svg)](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/owasp.yml) [![Spotbugs](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/spotbugs.yml/badge.svg)](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/spotbugs.yml) [![Eclipse-dash](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/eclipse-dash.yml/badge.svg)](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/eclipse-dash.yml) -[![Tavern IRS API test](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/tavern.yml/badge.svg)](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/tavern.yml) +[![Tavern IRS API test](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/tavern.yml/badge.svg)](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/tavern.yml) ## What is the IRS? -Within the [Catena-X network](https://catena-x.net/), the so-called Item Relationship Service (IRS) forms an essential +Within the [Catena-X network](https://catena-x.net/), the so-called Item Relationship Service (IRS) forms an essential foundation for various services and products. Within the Catena-X use cases, the IRS serves to increase business value. -For example, the IRS provides functionalities to serve requirements, such as occasion-based Traceability, -from the Supply Chain Act. In doing so, IDSA and Gaia-X principles, such as data interoperability and sovereignty, are -maintained on the Catena-X network and access to dispersed data is enabled. Data chains are established as a common asset. - -With the help of the IRS, data chains are to be provided ad-hoc across n-tiers within the Catena-X network. -To realize these data chains, the IRS relies on data models of the Traceability use case and provides the federated -data chains to customers or applications. Furthermore, the target picture of the IRS includes the enablement of new +For example, the IRS provides functionalities to serve requirements, such as occasion-based Traceability, +from the Supply Chain Act. In doing so, IDSA and Gaia-X principles, such as data interoperability and sovereignty, are +maintained on the Catena-X network and access to dispersed data is enabled. Data chains are established as a common +asset. + +With the help of the IRS, data chains are to be provided ad-hoc across n-tiers within the Catena-X network. +To realize these data chains, the IRS relies on data models of the Traceability use case and provides the federated +data chains to customers or applications. Furthermore, the target picture of the IRS includes the enablement of new business areas by means of data chains along the value chain in the automotive industry. ## Usage ### Local deployment -The following subsection provides instructions for running the infrastructure on docker-compose and the application in the IDE. +The following subsection provides instructions for running the infrastructure on docker-compose and the application in +the IDE. #### Docker-compose + IDE @@ -47,10 +49,12 @@ The following subsection provides instructions for running the infrastructure on ### Helm deployment -see [INSTALL.md](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/INSTALL.md) +see [INSTALL.md](INSTALL.md) ### Sample calls +#### IRS + Start a job for a globalAssetId: ```bash @@ -71,6 +75,7 @@ curl -X 'POST' \ ``` Retrieve the job results by using the jobId returned by the previous call: + ```bash curl -X 'GET' 'http://localhost:8080/irs/jobs/' -H 'accept: application/json' -H 'Authorization: Bearer ' ``` @@ -81,7 +86,8 @@ curl -X 'GET' 'http://localhost:8080/irs/jobs/' -H 'accept: application/j ## Licenses -For used licenses, please see the [NOTICE](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/NOTICE.md). +For used licenses, please see +the [NOTICE](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/NOTICE.md). ## Notice for Docker image @@ -94,14 +100,19 @@ Eclipse Tractus-X product(s) installed within the image: - GitHub: https://github.com/eclipse-tractusx/item-relationship-service - Project home: https://projects.eclipse.org/projects/automotive.tractusx - Dockerfile: https://github.com/eclipse-tractusx/item-relationship-service/blob/main/Dockerfile -- Project license: [Apache License, Version 2.0](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/LICENSE) +- Project + license: [Apache License, Version 2.0](https://github.com/eclipse-tractusx/item-relationship-service/blob/main/LICENSE) **Used base image** + - [eclipse-temurin:20-jre-alpine](https://github.com/adoptium/containers) -- Official Eclipse Temurin DockerHub page: https://hub.docker.com/_/eclipse-temurin -- Eclipse Temurin Project: https://projects.eclipse.org/projects/adoptium.temurin -- Additional information about the Eclipse Temurin images: https://github.com/docker-library/repo-info/tree/master/repos/eclipse-temurin +- Official Eclipse Temurin DockerHub page: https://hub.docker.com/_/eclipse-temurin +- Eclipse Temurin Project: https://projects.eclipse.org/projects/adoptium.temurin +- Additional information about the Eclipse Temurin + images: https://github.com/docker-library/repo-info/tree/master/repos/eclipse-temurin -As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained). +As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc +from the base distribution, along with any direct or indirect dependencies of the primary software being contained). -As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within. +As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies +with any relevant licenses for all software contained within. From 87b0e4dfc1612b18ca6a4c28417ce654e1ba6ef7 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 27 Nov 2023 14:22:58 +0100 Subject: [PATCH 04/37] docs(arc42):[#209] Fix formatting for documentation license --- docs/src/docs/administration/administration-guide.adoc | 4 ++-- docs/src/docs/index.adoc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/src/docs/administration/administration-guide.adoc b/docs/src/docs/administration/administration-guide.adoc index 186242a7a7..18f6ab4890 100644 --- a/docs/src/docs/administration/administration-guide.adoc +++ b/docs/src/docs/administration/administration-guide.adoc @@ -7,9 +7,9 @@ include::installation.adoc[leveloffset=+1] include::configuration.adoc[leveloffset=+1] include::troubleshooting.adoc[leveloffset=+1] -## NOTICE +== NOTICE -This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). +This work is licensed under the https://www.apache.org/licenses/LICENSE-2.0[Apache-2.0]. - SPDX-License-Identifier: Apache-2.0 - SPDX-FileCopyrightText: 2021, 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) diff --git a/docs/src/docs/index.adoc b/docs/src/docs/index.adoc index 1efb94519c..42ba1b47a3 100644 --- a/docs/src/docs/index.adoc +++ b/docs/src/docs/index.adoc @@ -10,9 +10,9 @@ xref:api-specification/api-specification.adoc[OpenApi specification] - xref:arc42/index.adoc[Single chapters] - xref:arc42/full.adoc[Full document] -## NOTICE +== NOTICE -This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). +This work is licensed under the https://www.apache.org/licenses/LICENSE-2.0[Apache-2.0]. - SPDX-License-Identifier: Apache-2.0 - SPDX-FileCopyrightText: 2021, 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) From 94f8b41b1ec5a41cf520b3c468ff76434577a341 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 27 Nov 2023 14:23:40 +0100 Subject: [PATCH 05/37] docs(arc42):[#209] Fix formatting for documentation license --- docs/src/docs/arc42/full.adoc | 4 ++-- docs/src/docs/arc42/index.adoc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/src/docs/arc42/full.adoc b/docs/src/docs/arc42/full.adoc index 330350a68f..db4a4f8ab9 100644 --- a/docs/src/docs/arc42/full.adoc +++ b/docs/src/docs/arc42/full.adoc @@ -12,9 +12,9 @@ include::cross-cutting/full.adoc[leveloffset=+1] include::quality/index.adoc[leveloffset=+1] include::glossary.adoc[leveloffset=+1] -## NOTICE +== NOTICE -This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). +This work is licensed under the https://www.apache.org/licenses/LICENSE-2.0[Apache-2.0]. - SPDX-License-Identifier: Apache-2.0 - SPDX-FileCopyrightText: 2021, 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) diff --git a/docs/src/docs/arc42/index.adoc b/docs/src/docs/arc42/index.adoc index 2e51c5f33a..4bdc00ce39 100644 --- a/docs/src/docs/arc42/index.adoc +++ b/docs/src/docs/arc42/index.adoc @@ -11,9 +11,9 @@ - xref:quality/index.adoc[Quality requirements] - xref:glossary.adoc[Glossary] -## NOTICE +== NOTICE -This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). +This work is licensed under the https://www.apache.org/licenses/LICENSE-2.0[Apache-2.0]. - SPDX-License-Identifier: Apache-2.0 - SPDX-FileCopyrightText: 2021, 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) From 286fc3f4d12be498ee8dd1714ccb3a72fea829be Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 27 Nov 2023 14:24:50 +0100 Subject: [PATCH 06/37] docs(arc42):[#209] Add additional documentation for ESS --- README.md | 28 +++++++++++++++++ .../src/docs/administration/installation.adoc | 10 +++---- .../introduction-goals/requirements.adoc | 3 +- .../ess-top-down/ess-top-down-scenario-1.adoc | 2 +- .../ess-top-down/ess-top-down-scenario-2.adoc | 2 +- .../ess-top-down/ess-top-down.adoc | 30 +++++++++++++++++-- docs/src/docs/arc42/runtime-view/full.adoc | 1 - ...ss_top_down_sequence_determine_result.puml | 27 +++++++++++++++++ 8 files changed, 91 insertions(+), 12 deletions(-) create mode 100644 docs/src/uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml diff --git a/README.md b/README.md index 843f0d2a78..e0af92871f 100644 --- a/README.md +++ b/README.md @@ -80,6 +80,34 @@ Retrieve the job results by using the jobId returned by the previous call: curl -X 'GET' 'http://localhost:8080/irs/jobs/' -H 'accept: application/json' -H 'Authorization: Bearer ' ``` +#### Environmental and Social Standards (ESS) + +Start an ESS investigation for a globalAssetId and Incident BPNS. + +```bash +curl -X 'POST' \ + 'http://localhost:8080/ess/bpn/investigations' \ + -H 'accept: application/json' \ + -H 'Content-Type: application/json' \ + -H 'Authorization: Bearer ' \ + -d '{ + "key": { + "globalAssetId": "urn:uuid:3d61ada2-1a50-42a0-b411-40a932dd56cc", + "bpn": "BPNL00ARBITRARY6" + }, + "incidentBPNSs": [ + "BPNS00ARBITRARY7" + ], + "bomLifecycle": "asPlanned" + }' +``` + +Retrieve the investigation results by using the jobId returned by the previous call: + +```bash +curl -X 'GET' 'http://localhost:8080/ess/bpn/investigations/' -H 'accept: application/json' -H 'Authorization: Bearer ' +``` + ## Documentation - [Item Relationship Service Documentation](https://eclipse-tractusx.github.io/item-relationship-service/docs/) diff --git a/docs/src/docs/administration/installation.adoc b/docs/src/docs/administration/installation.adoc index 152c0e550b..6eec2c1f73 100644 --- a/docs/src/docs/administration/installation.adoc +++ b/docs/src/docs/administration/installation.adoc @@ -6,7 +6,7 @@ https://eclipse-tractusx.github.io/item-relationship-service/index.yaml Use the latest release of the "irs-helm" chart. It contains all required dependencies. -If you also want to set up your own EDC consumer, use the "irs-edc-consumer" chart. +If you also want to set up your own EDC consumer, use the https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector[tractusx-connector] chart. Supply the required configuration properties (see chapter xref:configuration.adoc#_configuration[Configuration]) in a values.yaml file or override the settings directly. @@ -31,10 +31,10 @@ Create a new Helm chart and use the IRS as a dependency. dependencies: - name: irs-helm repository: https://eclipse-tractusx.github.io/item-relationship-service - version: 5.x.x - - name: irs-edc-consumer # optional - repository: https://eclipse-tractusx.github.io/item-relationship-service - version: 1.x.x + version: 6.x.x + - name: tractusx-connector # optional + repository: https://eclipse-tractusx.github.io/tractusx-edc + version: 0.5.x ---- diff --git a/docs/src/docs/arc42/introduction-goals/requirements.adoc b/docs/src/docs/arc42/introduction-goals/requirements.adoc index 10a6496a1a..141c95eeb8 100644 --- a/docs/src/docs/arc42/introduction-goals/requirements.adoc +++ b/docs/src/docs/arc42/introduction-goals/requirements.adoc @@ -14,4 +14,5 @@ The IRS is a: - functionality of IRS provider will be handled by providers submodel servers - federated IRS service - 'asBuild' BoM of serialized components -- provides endpoints for submodel-descriptors \ No newline at end of file +- provides endpoints for submodel-descriptors +- start recursive Environmental and Social Standard investigations throughout the network based on the "asPlanned" lifecycle diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc index 2ee41c83f2..f1a5b40f89 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc @@ -4,7 +4,7 @@ This section describes what happens when user creates an ess order. == Register an Ess-Investigation-Order -[plantuml,target=submodel-processing,format=svg] +[plantuml, target=ess-topdown-order,format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/3_ess_top_down_sequence-RegisterEssInvestigationOrder.puml[] .... diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc index 7f469ac102..748b28f234 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc @@ -4,7 +4,7 @@ This section describes what happens when user creates an ess job. == Register an Ess-Investigation Job -[plantuml,target=submodel-processing,format=svg] +[plantuml, target=ess-topdown-order-job,format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/4_ess_top_down_sequence_RegisterEssInvestigationJob.puml[] .... diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc index d2ab5e630d..d7cb68f9a6 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc @@ -14,7 +14,7 @@ The BoM as planned aspect models consists of three aspect models: == Overall flow -[plantuml,target=submodel-processing,format=svg] +[plantuml, target=ess-top-down,format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/0-ess-top-down-sequence.puml[] .... @@ -49,7 +49,7 @@ Note: ESS supplier responses are involved in each step of the process. == Flow on company level -[plantuml,target=submodel-processing,format=svg] +[plantuml, target=ess-top-down-highlevel,format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/1_ess-top-down-sequence-highlevel.puml[] .... @@ -92,11 +92,35 @@ The response of each direct supplier may contain the following results; In case at least one "YES" is received, the process step 3 ends +[cols="6,1,1,1"] +|=== +|Case |YES |NO |UNKNOWN +|All assets on all nodes does not contain assets with incidentBPNs |x | | +|At least one node contains assets with incidentBPNs | |x | +|At least one node does not contain PartSiteInformationAsPlanned aspect OR for at least one node PartSiteInformationAsPlanned aspect is not accessible | | |x +|At least one node contains PartSiteInformationAsPlanned with missing BPNS | | |x +|At least one child node does not exist or is not accessible | | |x +|=== + +[cols="1,1,1,2,5"] +|=== +| State 1 | State 2 | State n | Result State | Description +| YES | NO | UNKOWN | YES | If any part is impacted then whole Supply is impactes +| YES | NO | NO | YES | Yes if any BPN is impacted even if all are not impacted. +| NO | UNKNOW | NO | UNKNOW | Unknown if no Yes and at leat one bpn is unknown state. +| NO | NO | NO | NO | No if complete SupplyChain is not impacted +|=== + +[plantuml, target=ess_top_down_sequence-result,format=svg] +.... +include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml[] +.... + == Application Functionality Overview === Register an Ess-Investigation-Order -[plantuml,target=submodel-processing,format=svg] +[plantuml, target=ess-top-down-highlevel,format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/1_ess-top-down-sequence-highlevel.puml[] .... diff --git a/docs/src/docs/arc42/runtime-view/full.adoc b/docs/src/docs/arc42/runtime-view/full.adoc index 21aa1e6b2b..dfd1d44398 100644 --- a/docs/src/docs/arc42/runtime-view/full.adoc +++ b/docs/src/docs/arc42/runtime-view/full.adoc @@ -21,4 +21,3 @@ This recursive scenario is illustrated using the various use cases realized in t include::ess-top-down/ess-top-down.adoc[leveloffset=+1] include::ess-top-down/ess-top-down-scenario-1.adoc[leveloffset=+1] include::ess-top-down/ess-top-down-scenario-2.adoc[leveloffset=+1] -include::ess-top-down/ess-top-down-scenario-3.adoc[leveloffset=+1] diff --git a/docs/src/uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml b/docs/src/uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml new file mode 100644 index 0000000000..409d66a25d --- /dev/null +++ b/docs/src/uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml @@ -0,0 +1,27 @@ +@startuml +skinparam monochrome true +skinparam shadowing false +skinparam defaultFontName "Architects daughter" + +start +if (Twin is available in DTR) then (No) + :Unknown; + stop +else (Yes) +if (Twins has PartSiteInformationAsPlanned) then (No) + :Unknown; + stop +else (Yes) +if (PartSiteInformation contains BPNS) then (No) + :Unknown; + stop +else (Yes) +if (PartSiteInformation contains incident BPNS) then (No) + :No; + stop +else (Yes) + :Yes; + stop +endif + +@enduml \ No newline at end of file From 199f8ba53797c0de33f12bb661269b1b9a45e5a3 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Tue, 28 Nov 2023 09:53:15 +0100 Subject: [PATCH 07/37] docs(arc42):[#209] Add missing ESS parts to building block and runtime view --- .../building-block-view/whitebox-overall.adoc | 3 +++ .../ess-top-down/ess-top-down-scenario-2.adoc | 2 +- docs/src/docs/arc42/runtime-view/full.adoc | 5 +---- docs/src/docs/arc42/runtime-view/index.adoc | 14 +++++--------- .../runtime-view/irs-iterative/irs-iterative.adoc | 4 ---- .../whitebox_overall_decentral.puml | 6 +++++- .../uml-diagrams/deployment-view/level-0-dev.puml | 8 ++++---- 7 files changed, 19 insertions(+), 23 deletions(-) diff --git a/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc b/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc index e72cf6b2e2..0c42ced7ad 100644 --- a/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc +++ b/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc @@ -96,6 +96,9 @@ include::../../../uml-diagrams/building-block-view/whitebox_overall_decentral.pu | 16 | *IRS* accessing the *decentral DigitalTwinRegistry* on Tier Level using the *EDC* + +| 17 +| *IRS* sending notifications to the *IRS-ESS* instance running at the data provider using the *EDC* |=== diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc index 748b28f234..0645188cc4 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc @@ -1,4 +1,4 @@ -= Scenario 1: Register an Ess-Investigation-Job += Scenario 2: Register an Ess-Investigation-Job This section describes what happens when user creates an ess job. diff --git a/docs/src/docs/arc42/runtime-view/full.adoc b/docs/src/docs/arc42/runtime-view/full.adoc index dfd1d44398..2237751caf 100644 --- a/docs/src/docs/arc42/runtime-view/full.adoc +++ b/docs/src/docs/arc42/runtime-view/full.adoc @@ -1,10 +1,8 @@ = Runtime view - - == IRS Iterative -This section covers the main processes of the IRS and explains how data is transferred and processed when a job is executed. +This section describes the iterative flow, the main processes of the IRS, and explains how data is transferred and processed when a job is executed. include::irs-iterative/irs-iterative.adoc[leveloffset=+1] include::irs-iterative/scenario-1.adoc[leveloffset=+1] @@ -17,7 +15,6 @@ include::irs-iterative/scenario-4.adoc[leveloffset=+1] This section covers the main processes of the IRS in a recursive scenario in a network. This recursive scenario is illustrated using the various use cases realized in the scenario. - include::ess-top-down/ess-top-down.adoc[leveloffset=+1] include::ess-top-down/ess-top-down-scenario-1.adoc[leveloffset=+1] include::ess-top-down/ess-top-down-scenario-2.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/runtime-view/index.adoc b/docs/src/docs/arc42/runtime-view/index.adoc index 09f232725a..5a1d5235ff 100644 --- a/docs/src/docs/arc42/runtime-view/index.adoc +++ b/docs/src/docs/arc42/runtime-view/index.adoc @@ -1,27 +1,23 @@ = Runtime view -This section covers the main processes of the IRS and explains how data is transferred and processed when a job is executed. - -Please see the subpages for the relevant scenarios: - == IRS Iterative +This section describes the iterative flow, the main processes of the IRS, and explains how data is transferred and processed when a job is executed. + - xref:irs-iterative/irs-iterative.adoc[Overall] - xref:irs-iterative/scenario-1.adoc[Scenario 1: Create Job] - xref:irs-iterative/scenario-2.adoc[Scenario 2: Job Execution] - xref:irs-iterative/scenario-3.adoc[Scenario 3: Request for JobResponse] - xref:irs-iterative/scenario-4.adoc[Scenario 4: Cancel job execution] - - == IRS Recursive This section covers the main processes of the IRS in a recursive scenario in a network. This recursive scenario is illustrated using the various use cases realized in the scenario. -=== Use Case: ESS (Environmental and Social Standards) Top-Down approach - -include::ess-top-down/ess-top-down.adoc[leveloffset=+1] +- xref:ess-top-down/ess-top-down.adoc[Use Case: ESS (Environmental and Social Standards) Top-Down approach] +- xref:ess-top-down/ess-top-down-scenario-1.adoc[Scenario 1: Register an Ess-Investigation-Order] +- xref:ess-top-down/ess-top-down-scenario-2.adoc[Scenario 2: Register an Ess-Investigation-Job] diff --git a/docs/src/docs/arc42/runtime-view/irs-iterative/irs-iterative.adoc b/docs/src/docs/arc42/runtime-view/irs-iterative/irs-iterative.adoc index 5b21ab0bb7..ba7fe41999 100644 --- a/docs/src/docs/arc42/runtime-view/irs-iterative/irs-iterative.adoc +++ b/docs/src/docs/arc42/runtime-view/irs-iterative/irs-iterative.adoc @@ -1,7 +1,3 @@ -= IRS iterative - -This section describes the iterative flow of the IRS - [plantuml, target=overall, format=svg] .... include::../../../../uml-diagrams/runtime-view/api-call-asynchrous-sequence.puml[] diff --git a/docs/src/uml-diagrams/building-block-view/whitebox_overall_decentral.puml b/docs/src/uml-diagrams/building-block-view/whitebox_overall_decentral.puml index fb52eccddd..4181023169 100644 --- a/docs/src/uml-diagrams/building-block-view/whitebox_overall_decentral.puml +++ b/docs/src/uml-diagrams/building-block-view/whitebox_overall_decentral.puml @@ -19,7 +19,8 @@ package [**OEM**] <> as consumer { component [**EDC (Provider)**] <> as EDCProviderOEM component [**SubmodelServer**] <> as SubmodelServerOEM component [**decentral Digital Twin Registry**] <> as DT_REG_OEM - } + component [**IRS-ESS**] <> as EssOEM + } } @@ -37,6 +38,7 @@ package [**N-Tier**] <> as provider { component [**EDC (Provider)**] <> as EDCProvider component [**SubmodelServer**] <> as SubmodelServer component [**decentral Digital Twin Registry**] <> as DT_REG + component [**IRS-ESS**] <> as EssProvider } actor IrsApiConsumer @@ -47,6 +49,7 @@ IAM_IRS <..> Portal_IdP : **[03]** EDCProviderOEM <-> SubmodelServerOEM : **[04]** EDCProviderOEM <--> DT_REG_OEM : **[05]** +EDCProviderOEM <--> EssOEM : **[17]** miw <..> EDCProviderOEM : **[12]** IRS <.d.> EDC : **[06]** @@ -63,6 +66,7 @@ EDC <..> EDCProviderOEM : **[13]** miw <..> EDCProvider : **[14]** EDCProvider <--> SubmodelServer : **[15]** EDCProvider <--> DT_REG : **[16]** +EDCProvider <-> EssProvider : **[17]** miw -[hidden]d- IAM_IRS miw -[hidden]r- discovery_finder diff --git a/docs/src/uml-diagrams/deployment-view/level-0-dev.puml b/docs/src/uml-diagrams/deployment-view/level-0-dev.puml index f3ed29d642..949fa49998 100644 --- a/docs/src/uml-diagrams/deployment-view/level-0-dev.puml +++ b/docs/src/uml-diagrams/deployment-view/level-0-dev.puml @@ -11,17 +11,17 @@ node "Kubernetes Cluster" as k8s { component IRS component Minio - component "Decentral Registry" as dtr + component "Digital Twin Registry" as dtr component "EDC Consumer" as consumer component "EDC Provider" as provider - component "DAPS" as daps + component "Managed Identity Wallet" as miw collections "Submodel Provider" as submodel IRS --> Minio IRS -> consumer - consumer --> daps - provider --> daps + consumer --> miw + provider --> miw consumer <--> provider provider --- submodel provider --- dtr From 2b0d2d187b5e41d26285838f4238dc3631520be3 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Tue, 28 Nov 2023 09:54:58 +0100 Subject: [PATCH 08/37] docs(arc42):[#209] Minor grammar fix --- docs/src/docs/arc42/building-block-view/level-2.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/docs/arc42/building-block-view/level-2.adoc b/docs/src/docs/arc42/building-block-view/level-2.adoc index e538a91875..2dfc2f86b7 100644 --- a/docs/src/docs/arc42/building-block-view/level-2.adoc +++ b/docs/src/docs/arc42/building-block-view/level-2.adoc @@ -35,7 +35,7 @@ include::../../../uml-diagrams/building-block-view/level-2-int.puml[] == RecursiveJobHandler -The *RecursiveJobHandler* component provide the logic to build jobs with recursive logic to retrieve items over the complete C-X network and assembles the partial results into a single item graph result. +The *RecursiveJobHandler* component provide the logic to build jobs recursively to retrieve items over the complete C-X network and assembles the partial results into a single item graph result. === Component diagram From 316cf8016ffd6c973c0fb44429d56f667e87f155 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Tue, 28 Nov 2023 11:04:04 +0100 Subject: [PATCH 09/37] docs(arc42):[#209] Fix puml includes --- .../ess-top-down/ess-top-down-scenario-1.adoc | 2 +- .../ess-top-down/ess-top-down-scenario-2.adoc | 2 +- .../arc42/runtime-view/ess-top-down/ess-top-down.adoc | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc index f1a5b40f89..d0ddca85f3 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-1.adoc @@ -4,7 +4,7 @@ This section describes what happens when user creates an ess order. == Register an Ess-Investigation-Order -[plantuml, target=ess-topdown-order,format=svg] +[plantuml, target=ess-topdown-order, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/3_ess_top_down_sequence-RegisterEssInvestigationOrder.puml[] .... diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc index 0645188cc4..311a0be698 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down-scenario-2.adoc @@ -4,7 +4,7 @@ This section describes what happens when user creates an ess job. == Register an Ess-Investigation Job -[plantuml, target=ess-topdown-order-job,format=svg] +[plantuml, target=ess-topdown-order-job, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/4_ess_top_down_sequence_RegisterEssInvestigationJob.puml[] .... diff --git a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc index d7cb68f9a6..091e7e98f8 100644 --- a/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc +++ b/docs/src/docs/arc42/runtime-view/ess-top-down/ess-top-down.adoc @@ -14,7 +14,7 @@ The BoM as planned aspect models consists of three aspect models: == Overall flow -[plantuml, target=ess-top-down,format=svg] +[plantuml, target=ess-top-down, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/0-ess-top-down-sequence.puml[] .... @@ -49,7 +49,7 @@ Note: ESS supplier responses are involved in each step of the process. == Flow on company level -[plantuml, target=ess-top-down-highlevel,format=svg] +[plantuml, target=ess-top-down-highlevel, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/1_ess-top-down-sequence-highlevel.puml[] .... @@ -111,7 +111,7 @@ In case at least one "YES" is received, the process step 3 ends | NO | NO | NO | NO | No if complete SupplyChain is not impacted |=== -[plantuml, target=ess_top_down_sequence-result,format=svg] +[plantuml, target=ess_top_down_sequence-result, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_down_sequence_determine_result.puml[] .... @@ -120,7 +120,7 @@ include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/5_ess_top_d === Register an Ess-Investigation-Order -[plantuml, target=ess-top-down-highlevel,format=svg] +[plantuml, target=ess-top-down-highlevel, format=svg] .... include::../../../../uml-diagrams/runtime-view/use-case-ess-top-down/1_ess-top-down-sequence-highlevel.puml[] .... From 3085fb9941a30cebaae47775608a19ecbd985df2 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Tue, 28 Nov 2023 11:04:24 +0100 Subject: [PATCH 10/37] docs(arc42):[#209] Update ESS description --- docs/src/docs/arc42/building-block-view/level-2.adoc | 2 +- docs/src/docs/arc42/building-block-view/whitebox-overall.adoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/src/docs/arc42/building-block-view/level-2.adoc b/docs/src/docs/arc42/building-block-view/level-2.adoc index 2dfc2f86b7..ed4ba92255 100644 --- a/docs/src/docs/arc42/building-block-view/level-2.adoc +++ b/docs/src/docs/arc42/building-block-view/level-2.adoc @@ -35,7 +35,7 @@ include::../../../uml-diagrams/building-block-view/level-2-int.puml[] == RecursiveJobHandler -The *RecursiveJobHandler* component provide the logic to build jobs recursively to retrieve items over the complete C-X network and assembles the partial results into a single item graph result. +The *RecursiveJobHandler* component provide the logic to build jobs recursively to retrieve items over the complete C-X network and assembles the partial results into a single item graph result. === Component diagram diff --git a/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc b/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc index 0c42ced7ad..f8b5043a83 100644 --- a/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc +++ b/docs/src/docs/arc42/building-block-view/whitebox-overall.adoc @@ -98,7 +98,7 @@ include::../../../uml-diagrams/building-block-view/whitebox_overall_decentral.pu | *IRS* accessing the *decentral DigitalTwinRegistry* on Tier Level using the *EDC* | 17 -| *IRS* sending notifications to the *IRS-ESS* instance running at the data provider using the *EDC* +| In case of the use-case Environmental and Social Standards, *IRS* sends notifications to the *IRS-ESS* instance running at the data provider using the *EDC*. |=== From e20e4a0e171686609e2969a82e28e0966c41ee8b Mon Sep 17 00:00:00 2001 From: Jaro Hartmann <57985712+ds-jhartmann@users.noreply.github.com> Date: Tue, 28 Nov 2023 11:34:04 +0100 Subject: [PATCH 11/37] fix(concept):[#212] add review suggestion --- .../#212-Update-SingleLevelBomAsBuilt-2-0-0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md index a59f75bde1..9e4b00fa1a 100644 --- a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md +++ b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md @@ -196,8 +196,8 @@ flowchart LR s3 --> SingleLevelBomAsBuilt5[SingleLevelBomAsBuilt] s1 --> SerialPart3(SerialPart) - s2 --> SerialPart4(Batch) - s3 --> SerialPart5(Batch) + s2 --> Batch1(Batch) + s3 --> Batch2(Batch) SingleLevelBomAsBuilt3 --> AAS5((AAS)) SingleLevelBomAsBuilt4 --> AAS6((AAS)) From 912c6f159e73d06c4314a2a85ad6f389b1a71577 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Wed, 29 Nov 2023 15:36:51 +0100 Subject: [PATCH 12/37] feat(impl):[#297] compatibility matrix --- COMPATIBILITY_MATRIX.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 COMPATIBILITY_MATRIX.md diff --git a/COMPATIBILITY_MATRIX.md b/COMPATIBILITY_MATRIX.md new file mode 100644 index 0000000000..07cbc55fd8 --- /dev/null +++ b/COMPATIBILITY_MATRIX.md @@ -0,0 +1,33 @@ +# Compatibility matrix IRS + +## [4.2.0] - 2023-11-28 +| Name of service | Version | Comments | +|---------------------------|---------|---------------------| +| EDC | 0.5.3 | Helm chart version | +| EDC Client library | 0.1.3 | Dependency version | +| EDC PostgresSQL | 12.1.6 | Helm chart version | +| MIW | - | REST connection | +| Semantics Hub | - | REST connection | +| Portal | - | REST connection | +| dDTR | - | REST connection | +| Minio | 5.0.1 | Helm chart version | +| SingleLevelBomAsBuilt | 2.0.0 | Model version | +| SingleLevelBomAsPlanned | 2.0.0 | Model version | +| SingleLevelBomAsSpecified | 1.0.0 | Model version | +| SingleLevelUsageAsBuilt | 2.0.0 | Model version | + +## [4.1.0] - 2023-11-15 +| Name of service | Version | Comments | +|---------------------------|---------|---------------------| +| EDC | 0.5.3 | Helm chart version | +| EDC Client library | 0.1.3 | Dependency version | +| EDC PostgresSQL | 12.1.6 | Helm chart version | +| MIW | - | REST connection | +| Semantics Hub | - | REST connection | +| Portal | - | REST connection | +| dDTR | - | REST connection | +| Minio | 5.0.1 | Helm chart version | +| SingleLevelBomAsBuilt | 2.0.0 | Model version | +| SingleLevelBomAsPlanned | 2.0.0 | Model version | +| SingleLevelBomAsSpecified | 1.0.0 | Model version | +| SingleLevelUsageAsBuilt | 2.0.0 | Model version | \ No newline at end of file From 6439cd65efb37b34f0914b500a6408e7dff3ec4d Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Thu, 30 Nov 2023 11:20:52 +0100 Subject: [PATCH 13/37] feat(impl):[#297] update table --- COMPATIBILITY_MATRIX.md | 52 +++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 28 deletions(-) diff --git a/COMPATIBILITY_MATRIX.md b/COMPATIBILITY_MATRIX.md index 07cbc55fd8..d36e5e5246 100644 --- a/COMPATIBILITY_MATRIX.md +++ b/COMPATIBILITY_MATRIX.md @@ -1,33 +1,29 @@ # Compatibility matrix IRS ## [4.2.0] - 2023-11-28 -| Name of service | Version | Comments | -|---------------------------|---------|---------------------| -| EDC | 0.5.3 | Helm chart version | -| EDC Client library | 0.1.3 | Dependency version | -| EDC PostgresSQL | 12.1.6 | Helm chart version | -| MIW | - | REST connection | -| Semantics Hub | - | REST connection | -| Portal | - | REST connection | -| dDTR | - | REST connection | -| Minio | 5.0.1 | Helm chart version | -| SingleLevelBomAsBuilt | 2.0.0 | Model version | -| SingleLevelBomAsPlanned | 2.0.0 | Model version | -| SingleLevelBomAsSpecified | 1.0.0 | Model version | -| SingleLevelUsageAsBuilt | 2.0.0 | Model version | +| Name of service | Version | Helm | Comments | +|---------------------------|------------------------------|------------|-----------------| +| EDC | 0.5.3 | 0.5.3 | | +| EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | +| MIW | 0.1.0 | 0.1.0 | | +| Semantics Hub | 0.1.29 | v0.2.11-M1 | REST connection | +| DTR | 0.3.14-M1 | 0.3.22 | REST connection | +| Minio | RELEASE.2022-11-11T03-44-20Z | 5.0.1 | | +| SingleLevelBomAsBuilt | 2.0.0 | - | Model version | +| SingleLevelBomAsPlanned | 2.0.0 | - | Model version | +| SingleLevelBomAsSpecified | 1.0.0 | - | Model version | +| SingleLevelUsageAsBuilt | 2.0.0 | - | Model version | ## [4.1.0] - 2023-11-15 -| Name of service | Version | Comments | -|---------------------------|---------|---------------------| -| EDC | 0.5.3 | Helm chart version | -| EDC Client library | 0.1.3 | Dependency version | -| EDC PostgresSQL | 12.1.6 | Helm chart version | -| MIW | - | REST connection | -| Semantics Hub | - | REST connection | -| Portal | - | REST connection | -| dDTR | - | REST connection | -| Minio | 5.0.1 | Helm chart version | -| SingleLevelBomAsBuilt | 2.0.0 | Model version | -| SingleLevelBomAsPlanned | 2.0.0 | Model version | -| SingleLevelBomAsSpecified | 1.0.0 | Model version | -| SingleLevelUsageAsBuilt | 2.0.0 | Model version | \ No newline at end of file +| Name of service | Version | Helm | Comments | +|---------------------------|------------------------------|------------|-----------------| +| EDC | 0.5.3 | 0.5.3 | | +| EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | +| MIW | 0.1.0 | 0.1.0 | | +| Semantics Hub | 0.1.29 | v0.2.11-M1 | REST connection | +| DTR | 0.3.14-M1 | 0.3.22 | REST connection | +| Minio | RELEASE.2022-11-11T03-44-20Z | 5.0.1 | | +| SingleLevelBomAsBuilt | 2.0.0 | - | Model version | +| SingleLevelBomAsPlanned | 2.0.0 | - | Model version | +| SingleLevelBomAsSpecified | 1.0.0 | - | Model version | +| SingleLevelUsageAsBuilt | 2.0.0 | - | Model version | \ No newline at end of file From 1fcd84d9827bb40087121d4813bb9d86c990c3b4 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Thu, 30 Nov 2023 11:22:26 +0100 Subject: [PATCH 14/37] feat(impl):[#297] update table --- COMPATIBILITY_MATRIX.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/COMPATIBILITY_MATRIX.md b/COMPATIBILITY_MATRIX.md index d36e5e5246..6a39a770f0 100644 --- a/COMPATIBILITY_MATRIX.md +++ b/COMPATIBILITY_MATRIX.md @@ -5,7 +5,7 @@ |---------------------------|------------------------------|------------|-----------------| | EDC | 0.5.3 | 0.5.3 | | | EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | -| MIW | 0.1.0 | 0.1.0 | | +| MIW | 0.1.0 | 0.1.0 | REST connection | | Semantics Hub | 0.1.29 | v0.2.11-M1 | REST connection | | DTR | 0.3.14-M1 | 0.3.22 | REST connection | | Minio | RELEASE.2022-11-11T03-44-20Z | 5.0.1 | | @@ -19,7 +19,7 @@ |---------------------------|------------------------------|------------|-----------------| | EDC | 0.5.3 | 0.5.3 | | | EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | -| MIW | 0.1.0 | 0.1.0 | | +| MIW | 0.1.0 | 0.1.0 | REST connection | | Semantics Hub | 0.1.29 | v0.2.11-M1 | REST connection | | DTR | 0.3.14-M1 | 0.3.22 | REST connection | | Minio | RELEASE.2022-11-11T03-44-20Z | 5.0.1 | | From 6e2b4272e000c91c5121095a9ef13380a5ef9fb0 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Thu, 30 Nov 2023 17:01:20 +0100 Subject: [PATCH 15/37] feat(ess):[#313] Improve configuration for ESS EDC notification asset creation --- .../configmap-spring-app-config.yaml | 4 ++- charts/irs-helm/values.yaml | 4 ++- .../irs/ess/service/EdcRegistration.java | 34 +++++++++++-------- irs-api/src/main/resources/application.yml | 4 ++- .../irs/ess/service/EdcRegistrationTest.java | 28 ++++++++------- 5 files changed, 44 insertions(+), 30 deletions(-) diff --git a/charts/irs-helm/templates/configmap-spring-app-config.yaml b/charts/irs-helm/templates/configmap-spring-app-config.yaml index 5c56bec786..2c6e4b1fd1 100644 --- a/charts/irs-helm/templates/configmap-spring-app-config.yaml +++ b/charts/irs-helm/templates/configmap-spring-app-config.yaml @@ -119,7 +119,9 @@ data: ess: localBpn: {{ tpl (.Values.bpn | default "") . | quote }} localEdcEndpoint: {{ tpl (.Values.edc.provider.host | default "") . | quote }} - managementPath: {{ tpl (.Values.ess.managementPath | default "/management/v2") . | quote }} + assetsPath: {{ tpl (.Values.ess.assetsPath | default "/management/v3/assets") . | quote }} + policydefinitionsPath: {{ tpl (.Values.ess.policydefinitionsPath | default "/management/v2/policydefinitions") . | quote }} + contractdefinitionsPath: {{ tpl (.Values.ess.contractdefinitionsPath | default "/management/v2/contractdefinitions") . | quote }} irs: url: {{ tpl (.Values.irsUrl | default "") . | quote }} discovery: diff --git a/charts/irs-helm/values.yaml b/charts/irs-helm/values.yaml index dc7a632736..5f8626c22b 100644 --- a/charts/irs-helm/values.yaml +++ b/charts/irs-helm/values.yaml @@ -210,7 +210,9 @@ discovery: ess: mockEdcResult: # Map of BPNs and YES/NO strings - this configures the ESS mock response in case it called to investigate a BPN mockRecursiveEdcAsset: # List of BPNs for which the special, mocked notification asset should be used - managementPath: "/management/v2" # EDC management API path - used for notification asset creation + assetsPath: /management/v3/assets # EDC management API "assets" path - used for notification asset creation + policydefinitionsPath: /management/v2/policydefinitions # EDC management API "policydefinitions" path - used for notification policy definition creation + contractdefinitionsPath: /management/v2/contractdefinitions # EDC management API "contractdefinitions" path - used for notification contract definitions creation oauth: resourceClaim: "resource_access" # Name of the JWT claim for roles diff --git a/irs-api/src/main/java/org/eclipse/tractusx/irs/ess/service/EdcRegistration.java b/irs-api/src/main/java/org/eclipse/tractusx/irs/ess/service/EdcRegistration.java index 286bbd597d..83c77727b9 100644 --- a/irs-api/src/main/java/org/eclipse/tractusx/irs/ess/service/EdcRegistration.java +++ b/irs-api/src/main/java/org/eclipse/tractusx/irs/ess/service/EdcRegistration.java @@ -56,20 +56,26 @@ public class EdcRegistration { private final String essBaseUrl; private final String apiKeyHeader; private final String apiKeySecret; - private final String managementPath; + private final String assetsPath; + private final String policydefinitionsPath; + private final String contractdefinitionsPath; public EdcRegistration(@Qualifier("noErrorRestTemplate") final RestTemplate restTemplate, @Value("${ess.localEdcEndpoint}") final String edcProviderUrl, @Value("${ess.irs.url}") final String essBaseUrl, @Value("${irs-edc-client.controlplane.api-key.header}") final String apiKeyHeader, @Value("${irs-edc-client.controlplane.api-key.secret}") final String apiKeySecret, - @Value("${ess.managementPath}") final String managementPath) { + @Value("${ess.assetsPath}") final String assetsPath, + @Value("${ess.policydefinitionsPath}") final String policydefinitionsPath, + @Value("${ess.contractdefinitionsPath}") final String contractdefinitionsPath) { this.restTemplate = restTemplate; this.edcProviderUrl = edcProviderUrl; this.essBaseUrl = essBaseUrl; this.apiKeyHeader = apiKeyHeader; this.apiKeySecret = apiKeySecret; - this.managementPath = managementPath; + this.assetsPath = assetsPath; + this.policydefinitionsPath = policydefinitionsPath; + this.contractdefinitionsPath = contractdefinitionsPath; } @EventListener(ApplicationReadyEvent.class) @@ -107,14 +113,12 @@ private void registerAsset(final String assetId, final String notificationType, final var body = """ { "@context": {}, - "asset": { - "@id": "%s", - "properties": { - "description": "ESS notification endpoint", - "contenttype": "application/json", - "notificationtype":"%s", - "notificationmethod": "receive" - } + "@id": "%s", + "properties": { + "description": "ESS notification endpoint", + "contenttype": "application/json", + "notificationtype":"%s", + "notificationmethod": "receive" }, "dataAddress": { "baseUrl": "%s", @@ -124,7 +128,7 @@ private void registerAsset(final String assetId, final String notificationType, } } """.formatted(assetId, notificationType, essBaseUrl + path); - final var entity = restTemplate.exchange(edcProviderUrl + managementPath + "/assets", HttpMethod.POST, + final var entity = restTemplate.exchange(edcProviderUrl + assetsPath, HttpMethod.POST, toEntity(body), String.class); if (entity.getStatusCode().is2xxSuccessful()) { @@ -165,7 +169,7 @@ private void registerPolicy(final String policyId) { } } """.formatted(policyId); - final var entity = restTemplate.exchange(edcProviderUrl + managementPath + "/policydefinitions", + final var entity = restTemplate.exchange(edcProviderUrl + policydefinitionsPath, HttpMethod.POST, toEntity(body), String.class); if (entity.getStatusCode().is2xxSuccessful()) { @@ -190,7 +194,7 @@ private void registerContractDefinition(final String contractId, final String as } """.formatted(contractId, contractId, assetId); - final var entity = restTemplate.exchange(edcProviderUrl + managementPath + "/contractdefinitions", + final var entity = restTemplate.exchange(edcProviderUrl + contractdefinitionsPath, HttpMethod.POST, toEntity(body), String.class); if (entity.getStatusCode().is2xxSuccessful()) { log.info("Notification contract definition registered successfully."); @@ -215,7 +219,7 @@ private HttpHeaders headers() { private boolean assetIsNotRegisteredYet(final String assetId) { if (restTemplate != null && StringUtils.isNotBlank(edcProviderUrl)) { - final var url = edcProviderUrl + managementPath + "/assets/request"; + final var url = edcProviderUrl + assetsPath + "/request"; log.info("Requesting asset from EDC provider with url {}", url); final String filter = """ { diff --git a/irs-api/src/main/resources/application.yml b/irs-api/src/main/resources/application.yml index cc5bf4150f..4940e3f524 100644 --- a/irs-api/src/main/resources/application.yml +++ b/irs-api/src/main/resources/application.yml @@ -223,7 +223,9 @@ bpdm: ess: localBpn: ${ESS_LOCAL_BPN:} # BPN value of product - used during EDC notification communication localEdcEndpoint: ${EDC_PROVIDER_URL:} # EDC Provider Url - used during EDC notification communication - managementPath: ${EDC_MANAGEMENT_PATH:/management/v2} # EDC management API path - used for notification asset creation + assetsPath: ${EDC_MANAGEMENT_PATH:/management/v3/assets} # EDC management API "assets" path - used for notification asset creation + policydefinitionsPath: ${EDC_MANAGEMENT_PATH:/management/v2/policydefinitions} # EDC management API "policydefinitions" path - used for notification policy definition creation + contractdefinitionsPath: ${EDC_MANAGEMENT_PATH:/management/v2/contractdefinitions} # EDC management API "contractdefinitions" path - used for notification contract definitions creation irs: url: "${IRS_URL:}" # IRS Url to connect with discovery: diff --git a/irs-api/src/test/java/org/eclipse/tractusx/irs/ess/service/EdcRegistrationTest.java b/irs-api/src/test/java/org/eclipse/tractusx/irs/ess/service/EdcRegistrationTest.java index ee40262de7..4f9d19ca78 100644 --- a/irs-api/src/test/java/org/eclipse/tractusx/irs/ess/service/EdcRegistrationTest.java +++ b/irs-api/src/test/java/org/eclipse/tractusx/irs/ess/service/EdcRegistrationTest.java @@ -48,13 +48,17 @@ class EdcRegistrationTest { @Mock private RestTemplate restTemplate; private String edcUrl; - private String managementPath; + private String assetsPath; + private String policydefinitionsPath; + private String contractdefinitionsPath; @BeforeEach void setUp() { edcUrl = "http://localhost"; - managementPath = "/path"; - testee = new EdcRegistration(restTemplate, edcUrl, "", "", "", managementPath); + assetsPath = "/assets"; + policydefinitionsPath = "/policydefinitions"; + contractdefinitionsPath = "/contractdefinitions"; + testee = new EdcRegistration(restTemplate, edcUrl, "", "", "", assetsPath, policydefinitionsPath, contractdefinitionsPath); } @Test @@ -64,31 +68,31 @@ void shouldRegisterAssets_whenGetRequestReturnsNoResults() { testee.registerEdcAsset(); - verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + managementPath + "/assets/request"), + verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + assetsPath + "/request"), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + managementPath + "/assets"), + verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + assetsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + managementPath + "/policydefinitions"), + verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + policydefinitionsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + managementPath + "/contractdefinitions"), + verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + contractdefinitionsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); } @Test void shouldNotRegisterAssets_whenGetRequestReturnsResults() { - when(restTemplate.exchange(Mockito.eq(edcUrl + managementPath + "/assets/request"), + when(restTemplate.exchange(Mockito.eq(edcUrl + assetsPath + "/request"), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class))).thenReturn( ResponseEntity.ok().body("[{}]")); testee.registerEdcAsset(); - verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + managementPath + "/assets/request"), + verify(restTemplate, times(3)).exchange(Mockito.eq(edcUrl + assetsPath + "/request"), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + managementPath + "/assets"), + verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + assetsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + managementPath + "/policydefinitions"), + verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + policydefinitionsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); - verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + managementPath + "/contractdefinitions"), + verify(restTemplate, never()).exchange(Mockito.eq(edcUrl + contractdefinitionsPath), Mockito.eq(HttpMethod.POST), any(), Mockito.eq(String.class)); } From 5e8206fb75f3321ab4c7938ab4a96c230c365445 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Thu, 30 Nov 2023 17:03:26 +0100 Subject: [PATCH 16/37] feat(edc-client):[#313] Update EDC dependencies to 0.2.1 --- .../irs/edc/client/EdcControlPlaneClient.java | 4 +- .../client/transformer/EdcTransformer.java | 55 ++++++++++--------- ...onObjectFromCatalogRequestTransformer.java | 8 +-- .../transformer/EdcTransformerTest.java | 2 +- pom.xml | 2 +- 5 files changed, 36 insertions(+), 35 deletions(-) diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/EdcControlPlaneClient.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/EdcControlPlaneClient.java index b6b3378973..236db963ea 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/EdcControlPlaneClient.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/EdcControlPlaneClient.java @@ -111,7 +111,7 @@ private CatalogRequest buildCatalogRequest(final int offset, final String provid querySpec.limit(limit); } return CatalogRequest.Builder.newInstance() - .providerUrl(providerUrl) + .counterPartyAddress(providerUrl) .protocol(DATASPACE_PROTOCOL_HTTP) .querySpec(querySpec.build()) .build(); @@ -121,7 +121,7 @@ private CatalogRequest buildCatalogRequest(final int offset, final String provid final String value) { final QuerySpec querySpec = QuerySpec.Builder.newInstance().filter(new Criterion(key, "=", value)).build(); final var catalogRequest = CatalogRequest.Builder.newInstance() - .providerUrl(providerConnectorUrl) + .counterPartyAddress(providerConnectorUrl) .protocol(DATASPACE_PROTOCOL_HTTP) .querySpec(querySpec) .build(); diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformer.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformer.java index 32cc9d0967..b48ad6ea50 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformer.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformer.java @@ -35,33 +35,33 @@ import jakarta.json.JsonReader; import org.eclipse.edc.catalog.spi.Catalog; import org.eclipse.edc.catalog.spi.CatalogRequest; -import org.eclipse.edc.connector.core.transform.TransformerContextImpl; -import org.eclipse.edc.connector.core.transform.TypeTransformerRegistryImpl; +import org.eclipse.edc.core.transform.TransformerContextImpl; +import org.eclipse.edc.core.transform.TypeTransformerRegistryImpl; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromAssetTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromCatalogTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromCriterionTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromDataAddressTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromDataServiceTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromDatasetTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromDistributionTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromPolicyTransformer; +import org.eclipse.edc.core.transform.transformer.from.JsonObjectFromQuerySpecTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToActionTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToAssetTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToCatalogTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToConstraintTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToCriterionTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToDataServiceTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToDatasetTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToDistributionTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToDutyTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToOperatorTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToPermissionTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToPolicyTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToProhibitionTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonObjectToQuerySpecTransformer; +import org.eclipse.edc.core.transform.transformer.to.JsonValueToGenericTypeTransformer; import org.eclipse.edc.jsonld.TitaniumJsonLd; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromAssetTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromCatalogTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromCriterionTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromDataServiceTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromDatasetTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromDistributionTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromPolicyTransformer; -import org.eclipse.edc.jsonld.transformer.from.JsonObjectFromQuerySpecTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToActionTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToAssetTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToCatalogTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToConstraintTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToCriterionTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToDataServiceTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToDatasetTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToDistributionTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToDutyTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToOperatorTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToPermissionTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToPolicyTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToProhibitionTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonObjectToQuerySpecTransformer; -import org.eclipse.edc.jsonld.transformer.to.JsonValueToGenericTypeTransformer; -import org.eclipse.edc.protocol.dsp.transferprocess.transformer.type.from.JsonObjectFromDataAddressTransformer; import org.eclipse.edc.spi.result.Result; import org.eclipse.edc.transform.spi.TypeTransformerRegistry; import org.eclipse.tractusx.irs.edc.client.model.ContractOfferDescription; @@ -84,7 +84,8 @@ public class EdcTransformer { private final TitaniumJsonLd titaniumJsonLd; private final TransformerContextImpl transformerContext; - public EdcTransformer(@Qualifier("jsonLdObjectMapper") final ObjectMapper objectMapper, final TitaniumJsonLd titaniumJsonLd) { + public EdcTransformer(@Qualifier("jsonLdObjectMapper") final ObjectMapper objectMapper, + final TitaniumJsonLd titaniumJsonLd) { this.titaniumJsonLd = titaniumJsonLd; final JsonBuilderFactory jsonBuilderFactory = Json.createBuilderFactory(Map.of()); diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/JsonObjectFromCatalogRequestTransformer.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/JsonObjectFromCatalogRequestTransformer.java index 0c3ee35ba7..357f72672b 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/JsonObjectFromCatalogRequestTransformer.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/transformer/JsonObjectFromCatalogRequestTransformer.java @@ -50,11 +50,11 @@ public JsonObjectFromCatalogRequestTransformer(final JsonBuilderFactory jsonFact public @Nullable JsonObject transform(@NotNull final CatalogRequest dto, @NotNull final TransformerContext context) { final JsonObjectBuilder builder = this.jsonFactory.createObjectBuilder(); - builder.add(JsonLdKeywords.TYPE, CatalogRequest.EDC_CATALOG_REQUEST_TYPE) - .add(CatalogRequest.EDC_CATALOG_REQUEST_PROVIDER_URL, dto.getProviderUrl()) - .add(CatalogRequest.EDC_CATALOG_REQUEST_PROTOCOL, dto.getProtocol()); + builder.add(JsonLdKeywords.TYPE, CatalogRequest.CATALOG_REQUEST_TYPE) + .add(CatalogRequest.CATALOG_REQUEST_COUNTER_PARTY_ADDRESS, dto.getCounterPartyAddress()) + .add(CatalogRequest.CATALOG_REQUEST_PROTOCOL, dto.getProtocol()); Optional.ofNullable(dto.getQuerySpec()) - .ifPresent(s -> builder.add(CatalogRequest.EDC_CATALOG_REQUEST_QUERY_SPEC, + .ifPresent(s -> builder.add(CatalogRequest.CATALOG_REQUEST_QUERY_SPEC, context.transform(dto.getQuerySpec(), JsonObject.class))); return builder.build(); diff --git a/irs-edc-client/src/test/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformerTest.java b/irs-edc-client/src/test/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformerTest.java index ea10f4936c..6f95901fd8 100644 --- a/irs-edc-client/src/test/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformerTest.java +++ b/irs-edc-client/src/test/java/org/eclipse/tractusx/irs/edc/client/transformer/EdcTransformerTest.java @@ -329,7 +329,7 @@ void shouldSerializeCatalogRequestToJsonObject() { final String providerConnector = "https://provider.edc/api/v1/dsp"; final String protocol = "dataspace-protocol-http"; final CatalogRequest catalogRequest = CatalogRequest.Builder.newInstance() - .providerUrl(providerConnector) + .counterPartyAddress(providerConnector) .protocol(protocol) .build(); final JsonObject requestJson = edcTransformer.transformCatalogRequestToJson(catalogRequest); diff --git a/pom.xml b/pom.xml index 92b2e88386..94fe3611df 100644 --- a/pom.xml +++ b/pom.xml @@ -91,7 +91,7 @@ 2.0 1.7 2.2.16 - 0.1.3 + 0.2.1 3.5.0 1.76 3.2.0 From 8cb918aef579ab17a2b305925d0be4e47dc06980 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Fri, 1 Dec 2023 09:07:09 +0100 Subject: [PATCH 17/37] docs(changelog):[#313] Update CHANGELOG.md --- CHANGELOG.md | 5 +++++ charts/irs-helm/CHANGELOG.md | 2 ++ 2 files changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0adbfc20e3..eae79d60a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- Updated edc dependencies to 0.2.1 +- Update deprecated field "providerUrl" to counterPartyAddress in EDC catalog request +- Update ESS EDC notification creation asset endpoint to v3 + ## [4.2.0] - 2023-11-28 ### Changed diff --git a/charts/irs-helm/CHANGELOG.md b/charts/irs-helm/CHANGELOG.md index 98013d8920..ccdb952c36 100644 --- a/charts/irs-helm/CHANGELOG.md +++ b/charts/irs-helm/CHANGELOG.md @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- Changed configuration from `ess.managementPath` to options for each endpoint `ess.assetsPath` `ess.policydefinitionsPath` `ess.contractdefinitionsPath`. E.g. `ess.assetsPath: /management/v3/assets` ## [6.11.0] - 2023-11-28 ### Fixed From b66e969c948547ae73c6a019480d36b9324c5b9e Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Fri, 1 Dec 2023 09:13:29 +0100 Subject: [PATCH 18/37] docs(foss):[#313] Update DEPENDENCIES --- DEPENDENCIES | 109 +++++++++++++++++++++++---------------------------- 1 file changed, 50 insertions(+), 59 deletions(-) diff --git a/DEPENDENCIES b/DEPENDENCIES index c2b13a7574..e4fcebe9dc 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -152,9 +152,9 @@ maven/mavencentral/io.netty/netty-transport-native-epoll/4.1.101.Final, Apache-2 maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.opentelemetry/opentelemetry-api/1.25.0, Apache-2.0, approved, clearlydefined -maven/mavencentral/io.opentelemetry/opentelemetry-api/1.27.0, Apache-2.0, approved, clearlydefined +maven/mavencentral/io.opentelemetry/opentelemetry-api/1.29.0, Apache-2.0, approved, #10088 maven/mavencentral/io.opentelemetry/opentelemetry-context/1.25.0, Apache-2.0, approved, clearlydefined -maven/mavencentral/io.opentelemetry/opentelemetry-context/1.27.0, Apache-2.0, approved, clearlydefined +maven/mavencentral/io.opentelemetry/opentelemetry-context/1.29.0, Apache-2.0, approved, #10090 maven/mavencentral/io.pebbletemplates/pebble/3.2.1, BSD-3-Clause, approved, clearlydefined maven/mavencentral/io.prometheus/simpleclient/0.16.0, Apache-2.0, approved, clearlydefined maven/mavencentral/io.prometheus/simpleclient_common/0.16.0, Apache-2.0, approved, clearlydefined @@ -224,7 +224,7 @@ maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-core/10.1.16, Apache-2.0 maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-el/10.1.16, Apache-2.0, approved, #6997 maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-websocket/10.1.16, 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.20.1, EPL-1.0, approved, tools.aspectj +maven/mavencentral/org.aspectj/aspectjweaver/1.9.20.1, Apache-2.0 AND BSD-3-Clause AND EPL-1.0 AND BSD-3-Clause AND Apache-1.1, approved, #7695 maven/mavencentral/org.assertj/assertj-core/3.24.2, Apache-2.0, approved, #6161 maven/mavencentral/org.awaitility/awaitility/4.2.0, Apache-2.0, approved, clearlydefined maven/mavencentral/org.bouncycastle/bcpkix-jdk18on/1.76, MIT, approved, #9825 @@ -234,52 +234,53 @@ maven/mavencentral/org.bouncycastle/bcutil-jdk18on/1.76, MIT, approved, #9828 maven/mavencentral/org.ccil.cowan.tagsoup/tagsoup/1.2.1, Apache-2.0, approved, clearlydefined maven/mavencentral/org.checkerframework/checker-qual/3.33.0, MIT, approved, clearlydefined maven/mavencentral/org.checkerframework/checker-qual/3.37.0, MIT, approved, clearlydefined -maven/mavencentral/org.eclipse.edc/aggregate-service-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/asset-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/catalog-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/connector-core/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/core-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-api-configuration/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-api/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-http-dispatcher/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-transform/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-http-core/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-http-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-api/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-dispatcher/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-transform/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-api/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-dispatcher/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-transform/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transform/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/http-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/http/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jersey-core/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jersey-providers/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jetty-core/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-ld-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-ld/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-engine-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-engine/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-evaluator/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-model/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/runtime-metamodel/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transaction-datasource-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transaction-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-data-plane-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transform-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/util/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/validator-spi/0.1.3, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/web-spi/0.1.3, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/aggregate-service-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/asset-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/catalog-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/connector-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/core-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-api-configuration/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-api/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-http-dispatcher/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-transform/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-http-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-http-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-api/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-dispatcher/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-transform/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-api/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-dispatcher/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-transform/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/http-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/http/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jersey-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jersey-providers/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jetty-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-ld-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-ld/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-engine-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-engine/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-evaluator/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-model/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/runtime-metamodel/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transaction-datasource-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transaction-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-data-plane-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transform-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transform-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/util/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/validator-core/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/validator-spi/0.2.1, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/web-spi/0.2.1, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.jetty.toolchain/jetty-jakarta-servlet-api/5.0.2, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty.toolchain/jetty-jakarta-websocket-api/2.0.0, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty.websocket/websocket-core-client/11.0.17, EPL-2.0 OR Apache-2.0, approved, rt.jetty @@ -334,23 +335,14 @@ maven/mavencentral/org.glassfish.hk2/hk2-api/3.0.4, EPL-2.0 OR GPL-2.0-only with maven/mavencentral/org.glassfish.hk2/hk2-locator/3.0.4, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.glassfish maven/mavencentral/org.glassfish.hk2/hk2-utils/3.0.4, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.glassfish maven/mavencentral/org.glassfish.hk2/osgi-resource-locator/1.0.3, CDDL-1.0, approved, CQ10889 -maven/mavencentral/org.glassfish.jersey.containers/jersey-container-servlet-core/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.containers/jersey-container-servlet-core/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.containers/jersey-container-servlet/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.containers/jersey-container-servlet/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.core/jersey-client/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.core/jersey-client/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.core/jersey-common/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.core/jersey-common/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.core/jersey-server/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.core/jersey-server/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.ext/jersey-entity-filtering/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.ext/jersey-entity-filtering/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.inject/jersey-hk2/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.inject/jersey-hk2/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.media/jersey-media-json-jackson/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.media/jersey-media-json-jackson/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey -maven/mavencentral/org.glassfish.jersey.media/jersey-media-multipart/3.1.2, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish.jersey.media/jersey-media-multipart/3.1.3, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jersey maven/mavencentral/org.glassfish/jakarta.json/2.0.1, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.jsonp maven/mavencentral/org.graalvm.js/js/21.2.0, UPL-1.0 AND (MPL-2.0 AND LicenseRef-MIT-style) AND (BSD-3-Clause AND UPL-1.0) AND (GPL-2.0-only WITH Classpath-exception-2.0 AND UPL-1.0) AND (UPL-1.0 AND LicenseRef-Permission-Notice), approved, #10176 @@ -361,7 +353,6 @@ maven/mavencentral/org.hamcrest/hamcrest-core/2.2, BSD-3-Clause, approved, clear maven/mavencentral/org.hamcrest/hamcrest/2.2, BSD-3-Clause, approved, clearlydefined maven/mavencentral/org.hdrhistogram/HdrHistogram/2.1.12, BSD-2-Clause OR LicenseRef-Public-Domain, approved, CQ13192 maven/mavencentral/org.hibernate.validator/hibernate-validator/8.0.1.Final, Apache-2.0, approved, clearlydefined -maven/mavencentral/org.javassist/javassist/3.29.0-GA, Apache-2.0 AND LGPL-2.1-or-later AND MPL-1.1, approved, #6023 maven/mavencentral/org.javassist/javassist/3.29.2-GA, Apache-2.0 AND LGPL-2.1-or-later AND MPL-1.1, approved, #6023 maven/mavencentral/org.jboss.logging/jboss-logging/3.4.3.Final, Apache-2.0, approved, CQ21255 maven/mavencentral/org.jboss.logging/jboss-logging/3.5.3.Final, Apache-2.0, approved, #9471 From a5b6ee75a05a157f522fdb1eabfde0ba98bb85fb Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Fri, 1 Dec 2023 09:35:15 +0100 Subject: [PATCH 19/37] feat(charts):[#313] Fix chart linting --- charts/irs-helm/values.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/charts/irs-helm/values.yaml b/charts/irs-helm/values.yaml index 5f8626c22b..635d68bac7 100644 --- a/charts/irs-helm/values.yaml +++ b/charts/irs-helm/values.yaml @@ -210,9 +210,9 @@ discovery: ess: mockEdcResult: # Map of BPNs and YES/NO strings - this configures the ESS mock response in case it called to investigate a BPN mockRecursiveEdcAsset: # List of BPNs for which the special, mocked notification asset should be used - assetsPath: /management/v3/assets # EDC management API "assets" path - used for notification asset creation - policydefinitionsPath: /management/v2/policydefinitions # EDC management API "policydefinitions" path - used for notification policy definition creation - contractdefinitionsPath: /management/v2/contractdefinitions # EDC management API "contractdefinitions" path - used for notification contract definitions creation + assetsPath: /management/v3/assets # EDC management API "assets" path - used for notification asset creation + policydefinitionsPath: /management/v2/policydefinitions # EDC management API "policydefinitions" path - used for notification policy definition creation + contractdefinitionsPath: /management/v2/contractdefinitions # EDC management API "contractdefinitions" path - used for notification contract definitions creation oauth: resourceClaim: "resource_access" # Name of the JWT claim for roles From db967b648ff32132a5451d82136a710f684f9acd Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Fri, 1 Dec 2023 10:10:58 +0100 Subject: [PATCH 20/37] feat(impl):[#297] changelog link --- COMPATIBILITY_MATRIX.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/COMPATIBILITY_MATRIX.md b/COMPATIBILITY_MATRIX.md index 6a39a770f0..56521bb972 100644 --- a/COMPATIBILITY_MATRIX.md +++ b/COMPATIBILITY_MATRIX.md @@ -1,5 +1,7 @@ # Compatibility matrix IRS +Full changelog of IRS: [changelog](CHANGELOG.md) + ## [4.2.0] - 2023-11-28 | Name of service | Version | Helm | Comments | |---------------------------|------------------------------|------------|-----------------| From bd742e7f26365f600f9a10d27568d55537d19a88 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann <57985712+ds-jhartmann@users.noreply.github.com> Date: Fri, 1 Dec 2023 11:21:55 +0100 Subject: [PATCH 21/37] docs(changelog):[#313] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index eae79d60a7..2716573f2c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Changed - Updated edc dependencies to 0.2.1 -- Update deprecated field "providerUrl" to counterPartyAddress in EDC catalog request +- Update deprecated field `providerUrl` to `counterPartyAddress` in EDC catalog request - Update ESS EDC notification creation asset endpoint to v3 From 2b63c49723990ad4576f4d5fc8fd2e9d8d147848 Mon Sep 17 00:00:00 2001 From: ds-ext-kmassalski Date: Fri, 1 Dec 2023 11:15:58 +0000 Subject: [PATCH 22/37] chore(dependencies): Update DEPENDENCIES --- DEPENDENCIES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPENDENCIES b/DEPENDENCIES index c2b13a7574..e38d95fbc7 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -224,7 +224,7 @@ maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-core/10.1.16, Apache-2.0 maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-el/10.1.16, Apache-2.0, approved, #6997 maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-websocket/10.1.16, 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.20.1, EPL-1.0, approved, tools.aspectj +maven/mavencentral/org.aspectj/aspectjweaver/1.9.20.1, Apache-2.0 AND BSD-3-Clause AND EPL-1.0 AND BSD-3-Clause AND Apache-1.1, approved, #7695 maven/mavencentral/org.assertj/assertj-core/3.24.2, Apache-2.0, approved, #6161 maven/mavencentral/org.awaitility/awaitility/4.2.0, Apache-2.0, approved, clearlydefined maven/mavencentral/org.bouncycastle/bcpkix-jdk18on/1.76, MIT, approved, #9825 From 16d937a5712c405bc05ea3b2c5fdbdff47a171f1 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Fri, 1 Dec 2023 15:09:47 +0100 Subject: [PATCH 23/37] feat(impl):[#296] has alternatives support --- .../irs/edc/client/SingleLevelBomAsBuilt.java | 4 +++- .../irs/edc/client/SingleLevelBomAsPlanned.java | 1 + .../irs/edc/client/SingleLevelBomAsSpecified.java | 1 + .../irs/edc/client/SingleLevelUsageAsBuilt.java | 1 + .../eclipse/tractusx/irs/component/LinkedItem.java | 3 +++ .../tractusx/irs/data/CxTestDataContainer.java | 2 +- .../src/main/resources/test_data/CX_Testdata.json | 13 ++++++++++++- 7 files changed, 22 insertions(+), 3 deletions(-) diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java index deb5bc5f10..fc4d7ea129 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java @@ -73,11 +73,13 @@ public List asRelationships() { private ZonedDateTime lastModifiedOn; private String catenaXId; private String businessPartner; + private boolean hasAlternatives; public Relationship toRelationship(final String catenaXId) { final LinkedItem.LinkedItemBuilder linkedItem = LinkedItem.builder() .childCatenaXId(GlobalAssetIdentification.of(this.catenaXId)) - .lifecycleContext(BomLifecycle.AS_BUILT) + .lifecycleContext(this.hasAlternatives ? BomLifecycle.AS_PLANNED : BomLifecycle.AS_BUILT) + .hasAlternatives(this.hasAlternatives) .assembledOn(this.createdOn) .lastModifiedOn(this.lastModifiedOn); diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsPlanned.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsPlanned.java index 6dcee321c3..13afacce1a 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsPlanned.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsPlanned.java @@ -78,6 +78,7 @@ public Relationship toRelationship(final String catenaXId) { final LinkedItem.LinkedItemBuilder linkedItem = LinkedItem.builder() .childCatenaXId(GlobalAssetIdentification.of(this.catenaXId)) .lifecycleContext(BomLifecycle.AS_PLANNED) + .hasAlternatives(Boolean.FALSE) .assembledOn(this.createdOn) .lastModifiedOn(this.lastModifiedOn); diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsSpecified.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsSpecified.java index 459068c70e..6be41bb36d 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsSpecified.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsSpecified.java @@ -79,6 +79,7 @@ public Relationship toRelationship(final String catenaXId) { final LinkedItem.LinkedItemBuilder linkedItem = LinkedItem.builder() .childCatenaXId(GlobalAssetIdentification.of(this.childCatenaXId)) .lifecycleContext(BomLifecycle.AS_SPECIFIED) + .hasAlternatives(Boolean.FALSE) .assembledOn(childPart.getCreatedOn()) .lastModifiedOn(childPart.getLastModifiedOn()); diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelUsageAsBuilt.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelUsageAsBuilt.java index 0dbb5359e0..4e642da885 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelUsageAsBuilt.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelUsageAsBuilt.java @@ -96,6 +96,7 @@ public Relationship toRelationship(final String catenaXId, final String business final LinkedItem.LinkedItemBuilder linkedItem = LinkedItem.builder() .childCatenaXId(GlobalAssetIdentification.of(catenaXId)) .lifecycleContext(BomLifecycle.AS_BUILT) + .hasAlternatives(Boolean.FALSE) .assembledOn(this.createdOn) .lastModifiedOn(this.lastModifiedOn); diff --git a/irs-models/src/main/java/org/eclipse/tractusx/irs/component/LinkedItem.java b/irs-models/src/main/java/org/eclipse/tractusx/irs/component/LinkedItem.java index 4427cd7586..e89c76106e 100644 --- a/irs-models/src/main/java/org/eclipse/tractusx/irs/component/LinkedItem.java +++ b/irs-models/src/main/java/org/eclipse/tractusx/irs/component/LinkedItem.java @@ -61,4 +61,7 @@ public class LinkedItem { @JsonUnwrapped private GlobalAssetIdentification childCatenaXId; + @Schema(description = "Expresses whether the part is built-in or whether it is one of several options.", implementation = Boolean.class) + private boolean hasAlternatives; + } diff --git a/irs-models/src/main/java/org/eclipse/tractusx/irs/data/CxTestDataContainer.java b/irs-models/src/main/java/org/eclipse/tractusx/irs/data/CxTestDataContainer.java index 36a0d197f4..6426c78b68 100644 --- a/irs-models/src/main/java/org/eclipse/tractusx/irs/data/CxTestDataContainer.java +++ b/irs-models/src/main/java/org/eclipse/tractusx/irs/data/CxTestDataContainer.java @@ -58,7 +58,7 @@ public static class CxTestData { public static final String SINGLE_LEVEL_BOM_AS_BUILT_ASPECT_TYPE = "urn:bamm:io.catenax.single_level_bom_as_built:2.0.0#SingleLevelBomAsBuilt"; public static final String SINGLE_LEVEL_USAGE_BUILT_ASPECT_TYPE = "urn:bamm:io.catenax.single_level_usage_as_built:2.0.0#SingleLevelUsageAsBuilt"; public static final String SINGLE_LEVEL_BOM_AS_SPECIFIED_ASPECT_TYPE = "urn:bamm:io.catenax.single_level_bom_as_specified:1.0.0#SingleLevelBomAsSpecified"; - public static final String PART_AS_PLANNED_ASPECT_TYPE = "urn:bamm:io.catenax.part_as_planned:1.0.0#PartAsPlanned"; + public static final String PART_AS_PLANNED_ASPECT_TYPE = "urn:bamm:io.catenax.part_as_planned:1.0.1#PartAsPlanned"; public static final String SINGLE_LEVEL_BOM_AS_PLANNED_ASPECT_TYPE = "urn:bamm:io.catenax.single_level_bom_as_planned:2.0.0#SingleLevelBomAsPlanned"; public static final String BATCH_ASPECT_TYPE = "urn:bamm:io.catenax.batch:2.0.0#Batch"; public static final String MATERIAL_FOR_RECYCLING_ASPECT_TYPE = "urn:bamm:io.catenax.material_for_recycling:1.1.0#MaterialForRecycling"; diff --git a/irs-models/src/main/resources/test_data/CX_Testdata.json b/irs-models/src/main/resources/test_data/CX_Testdata.json index 171d6e774f..0f2b22a773 100644 --- a/irs-models/src/main/resources/test_data/CX_Testdata.json +++ b/irs-models/src/main/resources/test_data/CX_Testdata.json @@ -331371,7 +331371,18 @@ "businessPartner" : "BPNL00000003B0Q0", "createdOn" : "2022-02-03T14:48:54.709Z", "lastModifiedOn" : "2022-02-03T14:48:54.709Z" - } ] + }, +{ + "catenaXId" : "urn:uuid:72ec2897-4e20-475c-a28b-019cf5b42a18", + "quantity" : { + "quantityNumber" : 2.5, + "measurementUnit" : "unit:litre" + }, + "hasAlternatives" : true, + "businessPartner" : "BPNL00000003CNKC", + "createdOn" : "2022-02-03T14:48:54.709Z", + "lastModifiedOn" : "2022-02-03T14:48:54.709Z" + } ] } ], "urn:bamm:io.catenax.battery.product_description:1.0.1#ProductDescription" : [ { "minimalStateOfHealth" : { From f06381c30855346f723abdbd613f4530b88d8ed1 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Fri, 1 Dec 2023 15:12:30 +0100 Subject: [PATCH 24/37] feat(impl):[#296] has alternatives support --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0adbfc20e3..d9515cac5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +- Added support for `hasAlternatives` property in SingleLevelBomAsBuilt aspect ## [4.2.0] - 2023-11-28 ### Changed From a8c6a9f2d897857d1d2d85103ff01e1339297d85 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Fri, 1 Dec 2023 15:50:00 +0100 Subject: [PATCH 25/37] feat(impl):[#296] fix test --- docs/src/api/irs-api.yaml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/src/api/irs-api.yaml b/docs/src/api/irs-api.yaml index 12a1af8880..1a7849be24 100644 --- a/docs/src/api/irs-api.yaml +++ b/docs/src/api/irs-api.yaml @@ -1068,6 +1068,7 @@ components: linkedItem: assembledOn: 2022-02-03T14:48:54.709Z childCatenaXId: urn:uuid:a45a2246-f6e1-42da-b47d-5c3b58ed62e9 + hasAlternatives: false lastModifiedOn: 2022-02-03T14:48:54.709Z lifecycleContext: asBuilt quantity: @@ -1187,6 +1188,7 @@ components: linkedItem: assembledOn: 2022-02-03T14:48:54.709Z childCatenaXId: urn:uuid:a45a2246-f6e1-42da-b47d-5c3b58ed62e9 + hasAlternatives: false lastModifiedOn: 2022-02-03T14:48:54.709Z lifecycleContext: asBuilt quantity: @@ -1375,6 +1377,7 @@ components: linkedItem: assembledOn: 2022-02-03T14:48:54.709Z childCatenaXId: urn:uuid:a45a2246-f6e1-42da-b47d-5c3b58ed62e9 + hasAlternatives: false lastModifiedOn: 2022-02-03T14:48:54.709Z lifecycleContext: asBuilt quantity: @@ -2105,20 +2108,24 @@ components: maxLength: 45 minLength: 45 pattern: "^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" + hasAlternatives: + type: boolean + description: Expresses whether the part is built-in or whether it is one + of several options. lastModifiedOn: type: string - example: 2022-02-03T14:48:54.709Z format: date-time description: Last datetime item was modified. + example: 2022-02-03T14:48:54.709Z lifecycleContext: type: string - example: asBuilt description: The lifecycle context in which the child part was assembled into the parent part. enum: - asBuilt - asPlanned - asSpecified + example: asBuilt quantity: $ref: '#/components/schemas/Quantity' MeasurementUnit: From 87879c1f65a56cc567bcebc89921a1bb16e7c147 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann <57985712+ds-jhartmann@users.noreply.github.com> Date: Mon, 4 Dec 2023 16:14:14 +0100 Subject: [PATCH 26/37] docs(concept): Remove lifecycleContext from IRS relationship since this cannot be determined at the moment --- .../#212-Update-SingleLevelBomAsBuilt-2-0-0.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md index 86c805bb9a..9caec194c8 100644 --- a/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md +++ b/docs/concept/#212-Update-of-aspect-model-SingleLevelBomAsBuilt-2_0_0/#212-Update-SingleLevelBomAsBuilt-2-0-0.md @@ -65,7 +65,6 @@ Description of the main property 'SingleLevelBomAsBuild' was adapted to the new "assembledOn": "2022-02-03T14:48:54.709Z", "childCatenaXId": "urn:uuid:a45a2246-f6e1-42da-b47d-5c3b58ed62e9", "lastModifiedOn": "2022-02-03T14:48:54.709Z", - "lifecycleContext": "<>", // If there is a change of BomLifecycle "quantity": {...}, "hasAlternatives": "true" // == hasAlternatives } @@ -75,7 +74,6 @@ Description of the main property 'SingleLevelBomAsBuild' was adapted to the new | Change | Description | |------------------|----------------------------------------------------------------------------------------------------| -| lifecycleContext | Lifecycle context is adjusted to asPlanned or asBuilt in relation in case of a switch | | hasAlternatives | Reflects the state of property hasAlternative of item in SingleLevelBomAsBuilt chldItems structure | ## SingleLevelBomAsBuilt childItems contains asBuilt aspects hasAlternatives=false From f91d38a1750f3375e5dbe5875febfd4cfdac63f8 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Mon, 4 Dec 2023 16:29:57 +0100 Subject: [PATCH 27/37] chore(dockerfile): Switch to LTS eclipse-temurin:17-jre-alpine for jre and maven:3-eclipse-temurin-17-alpine for maven --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index f50190a4ff..7d605a7861 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,7 +20,7 @@ # * SPDX-License-Identifier: Apache-2.0 # Dependencies -FROM maven:3-openjdk-18-slim AS maven +FROM maven:3-eclipse-temurin-17-alpine AS maven ARG BUILD_TARGET=irs-api WORKDIR /build @@ -49,7 +49,7 @@ RUN --mount=type=cache,target=/root/.m2 mvn -B clean package -pl :$BUILD_TARGET # Copy the jar and build image -FROM eclipse-temurin:20-jre-alpine AS irs-api +FROM eclipse-temurin:17-jre-alpine AS irs-api ARG UID=10000 ARG GID=3000 From 07902d3e092469fa5856052cbcc017a6542bf923 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann <57985712+ds-jhartmann@users.noreply.github.com> Date: Mon, 4 Dec 2023 16:39:13 +0100 Subject: [PATCH 28/37] docs(arc42):[#209] Update deployment view level 0 Co-authored-by: ds-mkanal <100209308+mkanal@users.noreply.github.com> --- docs/src/uml-diagrams/deployment-view/level-0-dev.puml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/uml-diagrams/deployment-view/level-0-dev.puml b/docs/src/uml-diagrams/deployment-view/level-0-dev.puml index 949fa49998..90536e65a7 100644 --- a/docs/src/uml-diagrams/deployment-view/level-0-dev.puml +++ b/docs/src/uml-diagrams/deployment-view/level-0-dev.puml @@ -11,7 +11,7 @@ node "Kubernetes Cluster" as k8s { component IRS component Minio - component "Digital Twin Registry" as dtr + component "Decentral Digital Twin Registry" as dtr component "EDC Consumer" as consumer component "EDC Provider" as provider component "Managed Identity Wallet" as miw From 0ce7550a6738dfcdebd136518285666997e72245 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Tue, 5 Dec 2023 12:39:12 +0100 Subject: [PATCH 29/37] feat(impl):[#296] support has alt --- .../eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java index fc4d7ea129..c817c06ec4 100644 --- a/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java +++ b/irs-edc-client/src/main/java/org/eclipse/tractusx/irs/edc/client/SingleLevelBomAsBuilt.java @@ -78,7 +78,7 @@ public List asRelationships() { public Relationship toRelationship(final String catenaXId) { final LinkedItem.LinkedItemBuilder linkedItem = LinkedItem.builder() .childCatenaXId(GlobalAssetIdentification.of(this.catenaXId)) - .lifecycleContext(this.hasAlternatives ? BomLifecycle.AS_PLANNED : BomLifecycle.AS_BUILT) + .lifecycleContext(BomLifecycle.AS_BUILT) .hasAlternatives(this.hasAlternatives) .assembledOn(this.createdOn) .lastModifiedOn(this.lastModifiedOn); From 119bd1a6bfe2733288361fb0675f8f81cd81c34f Mon Sep 17 00:00:00 2001 From: Jaro Hartmann <57985712+ds-jhartmann@users.noreply.github.com> Date: Tue, 5 Dec 2023 13:56:20 +0100 Subject: [PATCH 30/37] chore(dockerfile): Switch to LTS version for eclipse-temurin jre --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e0af92871f..9cbea8fe45 100644 --- a/README.md +++ b/README.md @@ -133,7 +133,7 @@ Eclipse Tractus-X product(s) installed within the image: **Used base image** -- [eclipse-temurin:20-jre-alpine](https://github.com/adoptium/containers) +- [eclipse-temurin:17-jre-alpine](https://github.com/adoptium/containers) - Official Eclipse Temurin DockerHub page: https://hub.docker.com/_/eclipse-temurin - Eclipse Temurin Project: https://projects.eclipse.org/projects/adoptium.temurin - Additional information about the Eclipse Temurin From 7ffa775c366f597af6d0778ac40dc7460475b172 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Tue, 5 Dec 2023 14:46:24 +0100 Subject: [PATCH 31/37] feat(impl):[#296] update docs --- .../scope-context/technical-context.adoc | 39 +++++++++---------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/docs/src/docs/arc42/scope-context/technical-context.adoc b/docs/src/docs/arc42/scope-context/technical-context.adoc index c19adcb104..32c778f07d 100644 --- a/docs/src/docs/arc42/scope-context/technical-context.adoc +++ b/docs/src/docs/arc42/scope-context/technical-context.adoc @@ -31,21 +31,19 @@ The integrated EDC client in the IRS is responsible for creating restful request ==== Traversal Aspect |=== -|Name | Description | -|SingelLevelBomAsBuilt|The aspect provides the child parts (one structural level down) which the given object assembles.| 1.1.0 -|SingelLevelUsageAsBuilt | The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. Could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as-built lifecycle phase, i.e. a batch or a serialized part. | [X.X.X]| +| Name | Description | +| SingleLevelBomAsBuilt | The single-level bill of material represents one sub-level of an assembly and does not include any lower-level subassemblies. The as-built lifecycle references all child items as manufactured by the manufacturer referencing only child items in an as-built lifecycle themselves, unless parts can only be tracked by an part ID. If it's unclear which item has been built-in into the parent item, all potential parts must be listed. This is the case when, e.g. the same item is supplied by two suppliers and the item is only tracked by a customer part ID during assembly, these items can not be differentiated from each other. | 2.0.0 +| SingleLevelUsageAsBuilt | The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. Could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as-built lifecycle phase, i.e. a batch or a serialized part. | 2.0.0 |=== ==== Semantic Model |=== -|Name | Description | Version range -|SerialPart | A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial numbers or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number) | [1.0,0, 1.1.0] -|SingelLevelBomAsBuilt|The aspect provides the child parts (one structural level down) which the given object assembles.| [1.0.0,1.1.0] -|SingelLevelUsageAsBuilt| The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. Could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as-built lifecycle phase, i.e. a batch or a serialized part. | [1.0.0,1.0.1] -|Batch|A batch is a quantity of (semi-) finished products or (raw) material product that have been produced under the same circumstances (e.g. same production location), as specified groups or amounts, within a certain time frame. Every batch can differ in the number or amount of products. Different batches can have varied specifications, e.g., different colors. A batch is identified via a Batch ID.| [1.0.0,2.0.0] -|JustInSequencePart| A just-in-sequence part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a combination of several IDs related to a just-in-sequence process | [1.0.0] -|TractionBatteryCode| The traction battery code is an identification code for any automotive traction battery, ultracapacitor and other reachargeble energy storage device. It allows to carry information as required by the National Standard of the People's Republic of China according to GB/T 34014-2017 published by the Standardization Administration of China (SAC).| 1.0.0 +| Name | Description | Version range +| SerialPart | A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial numbers or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number) | [1.0,0, 1.1.0] +| Batch | A batch is a quantity of (semi-) finished products or (raw) material product that have been produced under the same circumstances (e.g. same production location), as specified groups or amounts, within a certain time frame. Every batch can differ in the number or amount of products. Different batches can have varied specifications, e.g., different colors. A batch is identified via a Batch ID.| [1.0.0, 2.0.0] +| JustInSequencePart | A just-in-sequence part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a combination of several IDs related to a just-in-sequence process | 1.0.0 +| TractionBatteryCode | The traction battery code is an identification code for any automotive traction battery, ultracapacitor and other reachargeble energy storage device. It allows to carry information as required by the National Standard of the People's Republic of China according to GB/T 34014-2017 published by the Standardization Administration of China (SAC).| 1.0.0 |=== === Overview asPlanned @@ -53,30 +51,29 @@ The integrated EDC client in the IRS is responsible for creating restful request ==== Traversal Aspect |=== -|Name | Description | -|SingelLevelBomAsPlanned | The single-level Bill of Material represents one sub-level of an assembly and does not include any lower-level subassemblies. In as planned lifecycle state all variants are covered (\"120% BoM\"). If multiple versions of child parts exist that can be assembled into the same parent part, all versions of the child part are included in the BoM. If there are multiple suppliers for the same child part, each supplier has an entry for their child part in the BoM.| 1.1.0 -|SingelLevelUsageAsPlanned | The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. This could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as planned lifecycle phase. If multiple versions of parent parts exist that the child part can be assembled into, all versions of the parent part are included in the usage list. | 1.1.0 +| Name | Description | +| SingleLevelBomAsPlanned | The single-level Bill of Material represents one sub-level of an assembly and does not include any lower-level subassemblies. In as planned lifecycle state all variants are covered (\"120% BoM\"). If multiple versions of child parts exist that can be assembled into the same parent part, all versions of the child part are included in the BoM. If there are multiple suppliers for the same child part, each supplier has an entry for their child part in the BoM.| 2.0.0 +| SingleLevelUsageAsPlanned | The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. This could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as planned lifecycle phase. If multiple versions of parent parts exist that the child part can be assembled into, all versions of the parent part are included in the usage list. | Not supported |=== ==== Semantic Model |=== -|Name | Description | -|PartAsPlanned | A Part as Planned represents an item in the Catena-X Bill of Material (BOM) in As-Planned lifecycle status in a specific version.| [ , ] -|PartSiteInformationAsPlanned|The aspect provides site related information for a given as planned item (i.e. a part type or part instance that is uniquely identifiable within Catena-X via its Catena-X ID). A site is a delimited geographical area where a legal entity does business. In the \"as planned\" lifecycle context all potentially related sites are listed including all sites where e.g. production of this part (type) is planned.| 1.0.0 -|SingelLevelUsageAsPlanned | The aspect provides the information in which parent part(s)/product(s) the given item is assembled in. This could be a 1:1 relationship in terms of a e.g. a brake component or 1:n for e.g. coatings. The given item as well as the parent item must refer to an object from as planned lifecycle phase. If multiple versions of parent parts exist that the child part can be assembled into, all versions of the parent part are included in the usage list.| [1.0.0,1.1.0] +| Name | Description | +| PartAsPlanned | A Part as Planned represents an item in the Catena-X Bill of Material (BOM) in As-Planned lifecycle status in a specific version. | [1.0,0, 1.0.1] +| PartSiteInformationAsPlanned |The aspect provides site related information for a given as planned item (i.e. a part type or part instance that is uniquely identifiable within Catena-X via its Catena-X ID). A site is a delimited geographical area where a legal entity does business. In the \"as planned\" lifecycle context all potentially related sites are listed including all sites where e.g. production of this part (type) is planned. | 1.0.0 |=== === Overview asSpecified ==== Traversal Aspect |=== -|Name | Description | -|SingelLevelBomAsSpecified| The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place. | 2.0.0 +| Name | Description | +| SingleLevelBomAsSpecified | The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place. | 1.0.0 |=== ==== Semantic Model |=== -|Name | Description | -|SingelLevelBomAsSpecified| The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place. | [1.0.0,2.0.0] +| Name | Description | +| PartAsSpecified | The aspect model PartAsSpecified belongs to the Part Catalogue. A PartAsSpecified represents a certain OEM catalog part on part number level. Providing a digital representation of the part as specified by the OEM. The link to the serialized part is done via the partId, this can only be done if the respective DT was provided by the supplier within the value chain. | [1.0.0, 1.0.1, 2.0.0] |=== \ No newline at end of file From cb3d332c760f82c5ee07727a09acc4dc54f3dce7 Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Wed, 6 Dec 2023 15:33:21 +0100 Subject: [PATCH 32/37] feat(impl):[#297] update col header --- COMPATIBILITY_MATRIX.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/COMPATIBILITY_MATRIX.md b/COMPATIBILITY_MATRIX.md index 56521bb972..9f80503b13 100644 --- a/COMPATIBILITY_MATRIX.md +++ b/COMPATIBILITY_MATRIX.md @@ -3,7 +3,7 @@ Full changelog of IRS: [changelog](CHANGELOG.md) ## [4.2.0] - 2023-11-28 -| Name of service | Version | Helm | Comments | +| Dependency | Version | Helm | Comments | |---------------------------|------------------------------|------------|-----------------| | EDC | 0.5.3 | 0.5.3 | | | EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | @@ -17,7 +17,7 @@ Full changelog of IRS: [changelog](CHANGELOG.md) | SingleLevelUsageAsBuilt | 2.0.0 | - | Model version | ## [4.1.0] - 2023-11-15 -| Name of service | Version | Helm | Comments | +| Dependency | Version | Helm | Comments | |---------------------------|------------------------------|------------|-----------------| | EDC | 0.5.3 | 0.5.3 | | | EDC PostgresSQL | 15.1.0-debian-11-r12 | 12.1.6 | Optional | From 3e190d87c1311ecfc8397642df7feb864819ace8 Mon Sep 17 00:00:00 2001 From: Jaro Hartmann Date: Wed, 6 Dec 2023 16:53:43 +0100 Subject: [PATCH 33/37] chore(testing): Update requests to 2.31.0 --- local/demo/requirements.txt | 2 +- local/testing/testdata/requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/local/demo/requirements.txt b/local/demo/requirements.txt index 5187afb459..e8e68a271b 100644 --- a/local/demo/requirements.txt +++ b/local/demo/requirements.txt @@ -1,4 +1,4 @@ -requests~=2.27.1 +requests~=2.31.0 requests_oauthlib~=1.3.1 oauthlib~=3.2.2 PyJWT~=2.6.0 diff --git a/local/testing/testdata/requirements.txt b/local/testing/testdata/requirements.txt index 78235c35f2..0227f3c31b 100644 --- a/local/testing/testdata/requirements.txt +++ b/local/testing/testdata/requirements.txt @@ -1 +1 @@ -requests~=2.27.1 \ No newline at end of file +requests~=2.31.0 \ No newline at end of file From 2c751f19f6bc483df0bc93ce940b0cd4bb1df50f Mon Sep 17 00:00:00 2001 From: "Krzysztof Massalski (Extern)" Date: Thu, 7 Dec 2023 11:10:36 +0100 Subject: [PATCH 34/37] feat(impl):[#253] fix cancelation bug, when job has no id after save --- .../timeouts/CancelBatchProcessingService.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/irs-api/src/main/java/org/eclipse/tractusx/irs/services/timeouts/CancelBatchProcessingService.java b/irs-api/src/main/java/org/eclipse/tractusx/irs/services/timeouts/CancelBatchProcessingService.java index 6873067ccd..5f2a19afe0 100644 --- a/irs-api/src/main/java/org/eclipse/tractusx/irs/services/timeouts/CancelBatchProcessingService.java +++ b/irs-api/src/main/java/org/eclipse/tractusx/irs/services/timeouts/CancelBatchProcessingService.java @@ -24,6 +24,7 @@ package org.eclipse.tractusx.irs.services.timeouts; import java.util.List; +import java.util.Objects; import java.util.UUID; import lombok.RequiredArgsConstructor; @@ -62,7 +63,12 @@ public void cancelNotFinishedJobsInBatch(final UUID batchId) { log.info("Start scheduled timeout process for batchId: {}", batchId.toString()); batchStore.find(batchId).ifPresent(batch -> { if (isBatchNotCompleted(batch.getBatchState())) { - cancelNotFinishedJobs(batch.getJobProgressList().stream().map(JobProgress::getJobId).toList()); + final List jobIds = batch.getJobProgressList() + .stream() + .map(JobProgress::getJobId) + .filter(Objects::nonNull) + .toList(); + cancelNotFinishedJobs(jobIds); } }); } @@ -75,7 +81,12 @@ public void cancelNotFinishedJobsInBatchOrder(final UUID batchOrderId) { .toList(); batches.forEach(batch -> { if (isBatchNotCompleted(batch.getBatchState())) { - cancelNotFinishedJobs(batch.getJobProgressList().stream().map(JobProgress::getJobId).toList()); + final List jobIds = batch.getJobProgressList() + .stream() + .map(JobProgress::getJobId) + .filter(Objects::nonNull) + .toList(); + cancelNotFinishedJobs(jobIds); } }); } From 24e68c8bd7cfa08439d6c8b0d7975c06097f8377 Mon Sep 17 00:00:00 2001 From: Matthias Fischer Date: Fri, 8 Dec 2023 10:50:44 +0100 Subject: [PATCH 35/37] chore(release): Update CHANGELOG.md --- CHANGELOG.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 01c4f6f124..ab99511b9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] + + +## [4.3.0] - 2023-12-08 ### Added - Added support for `hasAlternatives` property in SingleLevelBomAsBuilt aspect @@ -475,7 +478,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Unresolved - **Select Aspects you need** You are able to select the needed aspects for which you want to collect the correct endpoint information. -[Unreleased]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.2.0...HEAD +[Unreleased]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.3.0...HEAD +[4.3.0]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.2.0...4.3.0 [4.2.0]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.1.0...4.2.0 [4.1.0]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.0.2...4.1.0 [4.0.2]: https://github.com/eclipse-tractusx/item-relationship-service/compare/4.0.1...4.0.2 From c5d17c6665a2d4d7f9acd9846f3ff0bde4f1e655 Mon Sep 17 00:00:00 2001 From: Matthias Fischer Date: Fri, 8 Dec 2023 10:53:11 +0100 Subject: [PATCH 36/37] chore(release): Update helm charts CHANGELOG.md --- charts/irs-helm/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/charts/irs-helm/CHANGELOG.md b/charts/irs-helm/CHANGELOG.md index 2886ea41a2..b5e3fac343 100644 --- a/charts/irs-helm/CHANGELOG.md +++ b/charts/irs-helm/CHANGELOG.md @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] + +## [6.12.0] - 2023-12-08 ### Changed - Changed configuration from `ess.managementPath` to options for each endpoint `ess.assetsPath` `ess.policydefinitionsPath` `ess.contractdefinitionsPath`. E.g. `ess.assetsPath: /management/v3/assets` - Rename property `edc.provider.host` to `ess.edc.host` From 1ce442581426940de5b15de4f4f88ca2a7845b24 Mon Sep 17 00:00:00 2001 From: dsmf Date: Fri, 8 Dec 2023 11:27:53 +0000 Subject: [PATCH 37/37] chore(release): Prepare release for Helm version 6.12.0 --- charts/irs-helm/Chart.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/irs-helm/Chart.yaml b/charts/irs-helm/Chart.yaml index fbb9ae21a8..04ae3c7555 100644 --- a/charts/irs-helm/Chart.yaml +++ b/charts/irs-helm/Chart.yaml @@ -35,12 +35,12 @@ type: application # 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: 6.11.0 +version: 6.12.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: "4.2.0" +appVersion: "4.3.0" dependencies: - name: common repository: https://charts.bitnami.com/bitnami