Skip to content

Commit

Permalink
docs: add api collection and update readme for data exchange tutorial (
Browse files Browse the repository at this point in the history
  • Loading branch information
mgarciaLKS authored and tunacicek committed Nov 11, 2024
1 parent 01c2824 commit ac07437
Show file tree
Hide file tree
Showing 10 changed files with 1,327 additions and 22 deletions.
4 changes: 2 additions & 2 deletions charts/tx-data-provider/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ name: tx-data-provider
description: A Helm chart for Kubernetes

type: application
version: 0.1.1
version: 0.2.0
appVersion: 0.0.1

dependencies:
- name: digital-twin-registry
version: 0.4.11
version: 0.5.2
repository: https://eclipse-tractusx.github.io/charts/dev
condition: digital-twin-registry.enabled
- name: simple-data-backend
Expand Down
8 changes: 4 additions & 4 deletions charts/umbrella/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ sources:
- https://github.com/eclipse-tractusx/tractus-x-umbrella

type: application
version: 2.0.2
version: 2.0.3

# when adding or updating versions of dependencies, also update list under README.md#Install
dependencies:
Expand Down Expand Up @@ -80,18 +80,18 @@ dependencies:
# TX Data Consumer 1
- name: tx-data-provider
alias: dataconsumerOne
version: 0.1.1
version: 0.2.0
repository: file://../tx-data-provider
condition: dataconsumerOne.enabled
# TX Data Providers
- name: tx-data-provider
version: 0.1.1
version: 0.2.0
repository: file://../tx-data-provider
condition: tx-data-provider.enabled
# TX Data Consumer 2
- name: tx-data-provider
alias: dataconsumerTwo
version: 0.1.1
version: 0.2.0
repository: file://../tx-data-provider
condition: dataconsumerTwo.enabled
# pgadmin4 as helper tool for easy database access
Expand Down
63 changes: 49 additions & 14 deletions charts/umbrella/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,14 @@
- [Use released chart](#use-released-chart)
- [Install selected components](#option-1)
- [Install predefined subsets of components](#option-2)
- [Data Exchange](#data-exchange-subset)
- [Portal](#portal-subset)
- [BPDM](#bpdm-subset)
- [Use local repository](#use-local-repository)
- [Install selected components](#option-1-1)
- [Install predefined subsets of components](#option-2-1)
- [Data Exchange](#data-exchange-subset-1)
- [Portal](#portal-subset-1)
- [E2E Adopter Journeys](#e2e-adopter-journeys)
- [Data exchange](#data-exchange)
- [Get to know the Portal](#get-to-know-the-portal)
Expand All @@ -38,11 +43,13 @@ This umbrella chart provides a basis for running end-to-end tests or creating a

The Chart aims for a completely automated setup of a fully functional network, that does not require manual setup steps.

## Note for R24.05
The versions of integrated components correspond to the **overarching [Release 24.05](https://github.com/eclipse-tractusx/tractus-x-release/blob/24.05/CHANGELOG.md#2405---2024-05-29)**. The upgrade to **[Release 24.08](https://github.com/eclipse-tractusx/tractus-x-release/blob/24.08/CHANGELOG.md#2408---2024-08-05)** is currently in progress, some components have already been upgraded.

The versions of integrated components correspond to the **overarching [Release 24.05](https://github.com/eclipse-tractusx/tractus-x-release/blob/24.05/CHANGELOG.md#2405---2024-05-29)**.
## Note from R24.05 onwards

:warning: The 24.05 Release does not include a Managed Identity Wallet (MIW) - aka the FOSS Wallet of Tractus-X - as it was not yet able to cover functionalities required for the Self-Sovereign Identity Flow introduced with R24.05. To test and ship R24.05, a commercial solution was used: the Decentralized Identity Management (DIM) Wallet. To cover the wallet functionalities in the [E2E Adopter Journey Data exchange](#data-exchange) the [iatp-mock](https://github.com/eclipse-tractusx/tractus-x-umbrella/tree/main/charts/umbrella/charts/iatpmock/Chart.yaml) was added to the umbrella helm chart, please also see [Precondition for IATP Mock](#precondition-for-iatp-mock). For the [E2E Adopter Journey Portal](#portal), there isn't a mock available yet to cover the wallet functionalities.
:warning: The 24.05 Release does not include a Managed Identity Wallet (MIW) - aka the FOSS Wallet of Eclipse Tractus-X - as it was not - yet - able to cover functionalities required for the Self-Sovereign Identity Flow introduced with R24.05. To test and ship R24.05, a commercial solution was used: the Decentralized Identity Management (DIM) Wallet. To cover the wallet functionalities in the [E2E Adopter Journey Data exchange](#data-exchange) and [E2E Adopter Journey Portal](#portal), the [SSI DIM Wallet Stub](https://github.com/eclipse-tractusx/ssi-dim-wallet-stub) was added to the umbrella helm chart.

As an intermediate solution - before the SSI DIM Wallet Stub - the [iatp-mock](https://github.com/eclipse-tractusx/tractus-x-umbrella/tree/main/charts/umbrella/charts/iatpmock/Chart.yaml) was added, please see [Precondition for IATP Mock](#precondition-for-iatp-mock) if you'd still like to use it. Please be aware that it doesn't cover the wallet functionalities needed for the [E2E Adopter Journey Portal](#portal) for instance during the onboarding process of a company.

## Usage

Expand Down Expand Up @@ -337,7 +344,7 @@ helm install \

Choose to install one of the predefined subsets (currently in focus of the **E2E Adopter Journey**):

**Data Exchange Subset**
###### **Data Exchange Subset**

```bash
helm install \
Expand All @@ -358,7 +365,7 @@ helm install \
--namespace umbrella
```

**Portal Subset**
###### **Portal Subset**

```bash
helm install \
Expand All @@ -368,7 +375,7 @@ helm install \
--create-namespace
```

**BPDM Subset**
###### **BPDM Subset**
```bash
helm install \
--set bpdm.enabled=true,centralidp.enabled=true \
Expand Down Expand Up @@ -432,7 +439,7 @@ helm install -f your-values.yaml umbrella . --namespace umbrella --create-namesp

Choose to install one of the predefined subsets (currently in focus of the **E2E Adopter Journey**):

**Data Exchange Subset**
###### **Data Exchange Subset**

```bash
helm install -f values-adopter-data-exchange.yaml umbrella . --namespace umbrella --create-namespace
Expand All @@ -457,7 +464,7 @@ helm upgrade -f values-adopter-data-exchange.yaml umbrella . --namespace umbrell
helm install -f values-adopter-data-exchange-iatp-mock.yaml umbrella . --namespace umbrella --create-namespace
```

**Portal Subset**
###### **Portal Subset**

```bash
helm install -f values-adopter-portal.yaml umbrella . --namespace umbrella --create-namespace
Expand All @@ -467,13 +474,26 @@ helm install -f values-adopter-portal.yaml umbrella . --namespace umbrella --cre

#### Data exchange

:warning: Please be aware of [Note for R24.05](#note-for-r2405)
There are two ways to test and execute the Data Exchange tutorial:

Involved components:
**1. Postman**

You can import the Umbrella [Postman Collection](../../docs/api/postman/UmbrellaConnectorData-Exchange.postman_collection.json).

EDC, MIW, DTR, Vault (data provider and consumer in tx-data-provider), CentralIdP.
**2. Curl**

You can follow the [Curl Steps](../../docs/api/curl/UmbrellaConnectorDataExchange.md).

Involved components:

TBD.
- Data Provider
- Data Consumer 1
- Data Consumer 2 (Optional)
- BDRS Server Memory
- BPN-DID-Resolution-Service (BDRS)
- SSI DIM Wallet Stub
- SSI Credential Issuer
- pgadmin4

#### Get to know the Portal

Expand Down Expand Up @@ -516,6 +536,23 @@ tractusx-umbr3lla!
linkStyle 0,1 stroke:lightblue
```

Involved components:

- Portal
- CentralIdP (Keycloak)
- SharedIdP (Keycloak)
- pgadmin4

Some components are disabled, as they are not necessary for the exclusive use of the portal. If you want to perform the onboarding of a participant, it would be necessary to enable the following components:

- BPDM
- SSI DIM Wallet Stub
- BPN-DID-Resolution-Service (BDRS)
- SSI-Credential-Issuer
- Self Description Factory
- Discovery Finder
- BPN Discovery

The relevant hosts are the following:

- <http://centralidp.tx.test/auth/>
Expand All @@ -530,8 +567,6 @@ In case that you have TLS enabled (see [Self-signed TLS setup (Optional)](#self-
- <https://portal-backend.tx.test>
- <https://portal.tx.test>

:warning: Please be aware of [Note for R24.05](#note-for-r2405)

##### Note for onboarding process

Since the onboarding process requires the [Clearinghouse](https://github.com/eclipse-tractusx/portal-assets/blob/v2.1.0/docs/developer/Technical%20Documentation/Interface%20Contracts/Clearinghouse.md) to work properly, but ClearingHouse currently isn't available as a FOSS application you can skip the step with the following SQL Script which must be executed against the portal database.
Expand Down
2 changes: 1 addition & 1 deletion charts/umbrella/values-adopter-data-exchange.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,4 @@ ssi-credential-issuer:
enabled: false

ssi-dim-wallet-stub:
enabled: true
enabled: true
5 changes: 5 additions & 0 deletions charts/umbrella/values-adopter-portal.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,11 @@ pgadmin4:
bpdm:
enabled: false

# Set 'enabled' to true if onboarding is required
bdrs-server-memory:
enabled: true

# Set 'enabled' to true if onboarding is required
selfdescription:
enabled: false

Expand Down
17 changes: 16 additions & 1 deletion charts/umbrella/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,15 @@ bpndiscovery:
endpointAddress: /bpndiscovery
documentation: /bpndiscovery/swagger-ui/index.html
timeToLive: "31536000"
discoveryfinderClient:
baseUrl: "semantics.tx.test/discoveryfinder"
registration:
clientId: sa-cl22-01
clientSecret: "client-secret"
authorizationGrantType: changeme
schedulerCronFrequency: "0 0 */1 * * *"
provider:
tokenUri: "http://centralidp.tx.test/auth/realms/CX-Central/protocol/openid-connect/token"
livenessProbe:
initialDelaySeconds: 200
readinessProbe:
Expand Down Expand Up @@ -1164,7 +1173,13 @@ tx-data-provider:
simple-data-backend:
nameOverride: dataprovider-submodelserver
ingress:
enabled: false
enabled: true
className: "nginx"
hosts:
- host: "dataprovider-submodelserver.tx.test"
paths:
- path: "/"
pathType: "Prefix"

semantic-hub:
enabled: false
Expand Down
17 changes: 17 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Introduction

This repository provides the API requests to provide a tutorial for the Data Exchange.

The following table links you to the respective documentations.

| Documentation | Purpose |
|------------------------------------------------------------------|-----------------------------------------------------------------------------------------|
| [API Requests](api/API_Doc.md) | API Requests for Data Exchange. |

## NOTICE

This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0).

- SPDX-License-Identifier: Apache-2.0
- SPDX-FileCopyrightText: 2024 Contributors to the Eclipse Foundation
- Source URL: <https://github.com/eclipse-tractusx/tractus-x-umbrella>
19 changes: 19 additions & 0 deletions docs/api/API_Doc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# API Requests for Data Exchange

This document provides about API requests for the Data Exchange.

## Postman

There is a [postman collection](./postman) containing information on how to exchange data between provider and consumer.

## Curl

There is a [curl tutorial](./curl) containing step by step tutorial on how to exchange data between provider and consumer, using the console.

## NOTICE

This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0).

* SPDX-License-Identifier: Apache-2.0
* SPDX-FileCopyrightText: 2024 Contributors to the Eclipse Foundation
* Source URL: <https://github.com/eclipse-tractusx/tractus-x-umbrella>
Loading

0 comments on commit ac07437

Please sign in to comment.