Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: update documentation for R24.08 #518

Merged
merged 11 commits into from
Jul 25, 2024
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
195 changes: 195 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,201 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [v2.1.0](https://github.com/eclipse-tractusx/puris/releases/tag/2.1.0)

The following Changelog lists the changes. Please refer to the [documentation](docs/README.md) for configuration needs
and understanding the concept changes.

The **need for configuration updates** is **marked bold**.

### Added

* **ERP Adapter**
* Added client ([#443](https://github.com/eclipse-tractusx/puris/pull/443))
* Added trigger service ([#474](https://github.com/eclipse-tractusx/puris/pull/474))
* Added button to frontend ([#504](https://github.com/eclipse-tractusx/puris/pull/504))
* backend implementation for Days of Supply ([CX-0145](https://catenax-ev.github.io/docs/next/standards/CX-0145-DaysofsupplyExchange)) ([#441](https://github.com/eclipse-tractusx/puris/pull/441))
* Demand and Capacity Notifications ([CX-0146](https://catenax-ev.github.io/docs/next/standards/CX-0146-SupplyChainDisruptionNotifications)) can be sent between partners ([#447](https://github.com/eclipse-tractusx/puris/pull/447), [#451](https://github.com/eclipse-tractusx/puris/pull/451))

### Changed

Fixes

* Fail contract negotiation if non-empty obligations or prohibitions are set ([#509](https://github.com/eclipse-tractusx/puris/pull/509))
* Use expanded jsonLD when evaluating catalog offers ([#416](https://github.com/eclipse-tractusx/puris/pull/416))
* Publish cxId to DTR when retrieving Part Type later ([#483](https://github.com/eclipse-tractusx/puris/pull/483))

CI

* Trivy Workflow ([#452](https://github.com/eclipse-tractusx/puris/pull/452))
* Helm Test to only check for version bump in the end so that version bumps are not enforced anymore ([#450](https://github.com/eclipse-tractusx/puris/pull/450))

Chore

* Updated license information ([#468](https://github.com/eclipse-tractusx/puris/pull/468), [#476](https://github.com/eclipse-tractusx/puris/pull/476))
* Update of swagger documentation ([#514](https://github.com/eclipse-tractusx/puris/pull/514), [#516](https://github.com/eclipse-tractusx/puris/pull/516))
* Version Bumps
* Infrastructure Components
* Tractus-X EDC to 0.7.3 ([#508](https://github.com/eclipse-tractusx/puris/pull/508))
* Digital Twin Registry to 0.5.0 ([#496](https://github.com/eclipse-tractusx/puris/pull/496))
* Backend Dependencies
* spring boot starter parent to 3.3.1 ([#471](https://github.com/eclipse-tractusx/puris/pull/471))
* Frontend Dependencies
* vite to 5.3.3 ([#481](https://github.com/eclipse-tractusx/puris/pull/481))
* postcss to 8.4.39 ([#478](https://github.com/eclipse-tractusx/puris/pull/478))
* braces to 3.0.3 ([#453](https://github.com/eclipse-tractusx/puris/pull/453))
* typescript-eslint/eslint-plugin to 7.0.0 (7.0.0)
* IAM Mock (Local Deployment): certify to 2024.7.4 ([#484](https://github.com/eclipse-tractusx/puris/pull/484))
* CI
* actions/setup-python to 5.1.1 ([#492](https://github.com/eclipse-tractusx/puris/pull/492))
* github/codeql-action to 3.25.10 ([#448](https://github.com/eclipse-tractusx/puris/pull/448))
* checkmarx/kics-github-action to 2.1.0 ([#446](https://github.com/eclipse-tractusx/puris/pull/446))
* actions/download-artifact to 4.1.7 ([#396](https://github.com/eclipse-tractusx/puris/pull/396))
* azure/setup-helm to 4 ([#395](https://github.com/eclipse-tractusx/puris/pull/395))

### Removed

N.A.

### Known Knowns

#### Security

The Backend is currently secured via API Key while the Frontend already uses an API-KEY.
See [Admin Guide](./docs/admin/Admin_Guide.md) for further information.

#### Upgradeability

As currently no active user was known migrations of data are not yet supported. The chart technically is upgradeable.

#### Data Sovereignty

For productive use the following enhancements are encouraged

* User FrontEnd available: Role Company Admin is able to query catalogue and see negotiations and transfers
But company rules / policies need to be configured upfront in backend (via postman) to enable automatic contract
negotiations, responsibility lies with Company Admin role
--> add section in the User Manual describing this and the (legal) importance and responsibility behind defining these
rules
* Currently only one standard policy per reg. connector / customer instance is supported (more precisely one for DTR,
one for all submodels), negotiation happens automatically based on this
--> enhance option to select partner and define specific policies (to be planned in context of BPDM Integration)
--> UI for specific configuration by dedicated role (e.g. Comp Admin) and more flexible policy configuration (without
code changes) is needed
* As a non-Admin user I do not have ability to view policies in detail --> transparency for users when interacting with
and requesting / consuming data via dashboard / views on underlying usage policies to be enhanced
* ContractReference Constraint or configuration of policies specific to one partner only not implemented -->
clarification of potential reference to "PURIS standard contract" and enabling of ContractReference for 24.08.
* unclear meaning of different stati in negotations --> add view of successfull contract agreeements wrt which data have
been closed
* current logging only done on info level --> enhance logging of policies (currently only available at debug level)
* in case of non-matching policies (tested in various scenarios) no negotiation takes place -->
**enhance visualization or specific Error message to user**
* no validation of the Schema "profile": "cx-policy:profile2405" (required to ensure interop with other PURIS apps)

#### Styleguide

Overall

* Brief description at the top of each page describing content would be nice for better user experience.


Stocks

* user needs better guidance to click on a stock to update it (else error prone to enter one
slightly different attribute and Add instead of update)
* Refresh -- update request has been sent successfully. -> more information regarding data transfer needed for user

Catalog

* No action possible -> unclear to user when and how user will consume an offer

Negotiations

* Add filters for transparency (bpnl, state)

## [v2.0.2](https://github.com/eclipse-tractusx/puris/releases/tag/2.0.2)

The following Changelog lists the changes. Please refer to the [documentation](docs/README.md) for configuration needs
and understanding the concept changes.

The **need for configuration updates** is **marked bold**.

### Added

* Added backend implementation to CRUD Demand and Capacity
Notifications ([#415](https://github.com/eclipse-tractusx/puris/pull/415))
* Added ERP response interface ([#418](https://github.com/eclipse-tractusx/puris/pull/418))

### Changed

* Fixed check when answering delivery information request from a customer which prevented always to
answer ([#435](https://github.com/eclipse-tractusx/puris/pull/435))

### Removed

N.A.

### Known Knowns

#### Security

The Backend is currently secured via API Key while the Frontend already uses an API-KEY.
See [Admin Guide](./docs/admin/Admin_Guide.md) for further information.

#### Upgradeability

As currently no active user was known migrations of data are not yet supported. The chart technically is upgradeable.

#### Data Sovereignty

For productive use the following enhancements are encouraged

* User FrontEnd available: Role Company Admin is able to query catalogue and see negotiations and transfers
But company rules / policies need to be configured upfront in backend (via postman) to enable automatic contract
negotiations, responsibility lies with Company Admin role
--> add section in the User Manual describing this and the (legal) importance and responsibility behind defining these
rules
* Currently only one standard policy per reg. connector / customer instance is supported (more precisely one for DTR,
one for all submodels), negotiation happens automatically based on this
--> enhance option to select partner and define specific policies (to be planned in context of BPDM Integration)
--> UI for specific configuration by dedicated role (e.g. Comp Admin) and more flexible policy configuration (without
code changes) is needed
* As a non-Admin user I do not have ability to view policies in detail --> transparency for users when interacting with
and requesting / consuming data via dashboard / views on underlying usage policies to be enhanced
* ContractReference Constraint or configuration of policies specific to one partner only not implemented -->
clarification of potential reference to "PURIS standard contract" and enabling of ContractReference for 24.08.
* unclear meaning of different stati in negotations --> add view of successfull contract agreeements wrt which data have
been closed
* current logging only done on info level --> enhance logging of policies (currently only available at debug level)
* in case of non-matching policies (tested in various scenarios) no negotiation takes place -->
**enhance visualization or specific Error message to user**
* no validation of the Schema "profile": "cx-policy:profile2405" (required to ensure interop with other PURIS apps)

#### Styleguide

Overall

* Brief description at the top of each page describing content would be nice for better user experience.

Dashboard

* Similar for Create Delivery (here SOME entries are reset but warnings stay) (**block**)

Stocks

* user needs better guidance to click on a stock to update it (else error prone to enter one
slightly different attribute and Add instead of update)
* Refresh -- update request has been sent successfully. -> more information regarding data transfer needed for user

Catalog

* No action possible -> unclear to user when and how user will consume an offer

Negotiations

* Add filters for transparency (bpnl, state)

## [v2.0.1](https://github.com/eclipse-tractusx/puris/releases/tag/2.0.1)

The following Changelog lists the changes. Please refer to the [documentation](docs/README.md) for configuration needs
Expand Down
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,19 @@ Beside the dependencies provided in the Helm Chart, the following dependencies h
| [Tractus-X Connector](https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector) | 0.7.3 | 0.7.3 |
| [Digital Twin Registry](https://github.com/eclipse-tractusx/sldt-digital-twin-registry/tree/main/charts/registry) | 0.5.0 | 0.5.0 |

## Overview of Implemented Standards

The application follows the following Catena-X standards (business-wise) to the following degree:

| Standard | Level of implementation |
|----------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------|
| [CX-0118 Delivery Information Exchange 2.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0118-ActualDeliveryInformationExchange) | Compliant. |
| [CX-0120 Short-Term Material Demand Exchange 2.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0120-ShortTermMaterialDemandExchange) | Compliant. |
| [CX-0121 Planned Production Output Exchange 1.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0121-PlannedProductionOutputExchange) | Compliant. |
| [CX-0122 Item Stock Exchange 2.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0122-ItemStockExchange) | Compliant. |
| [CX-0145 Days of Supply Exchange 1.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0145-DaysofsupplyExchange) | Missing EDC and Frontend integration. |
| [CX-0146 Supply Chain Disruption Notifications 1.0.0](https://catenax-ev.github.io/docs/next/standards/CX-0146-SupplyChainDisruptionNotifications) | Missing functionality to react and close. |

## Known Knows

### Data Sovereignty
Expand Down
2 changes: 1 addition & 1 deletion backend/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
</parent>
<groupId>org.eclipse.tractusx.puris</groupId>
<artifactId>puris-backend</artifactId>
<version>2.0.2</version>
<version>2.1.0</version>
<name>puris-backend</name>
<description>PURIS Backend</description>
<properties>
Expand Down
2 changes: 1 addition & 1 deletion charts/puris/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,4 @@ version: 2.7.0
# 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: "2.0.2"
appVersion: "2.1.0"
6 changes: 3 additions & 3 deletions charts/puris/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# puris

![Version: 2.7.0](https://img.shields.io/badge/Version-2.7.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.0.2](https://img.shields.io/badge/AppVersion-2.0.2-informational?style=flat-square)
![Version: 2.7.0](https://img.shields.io/badge/Version-2.7.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.1.0](https://img.shields.io/badge/AppVersion-2.1.0-informational?style=flat-square)

A helm chart for Kubernetes deployment of PURIS

Expand All @@ -16,12 +16,12 @@ To install the chart with the release name `puris`:

```shell
$ helm repo add tractusx-dev https://eclipse-tractusx.github.io/charts/dev
$ helm install puris tractusx-dev/policy-hub
$ helm install puris tractusx-dev/puris
```
To install the helm chart into your cluster with your values:

```shell
$ helm install -f your-values.yaml puris tractusx-dev/policy-hub
$ helm install -f your-values.yaml puris tractusx-dev/puris
```

To use the helm chart as a dependency:
Expand Down
4 changes: 2 additions & 2 deletions charts/puris/README.md.gotmpl
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ To install the chart with the release name `puris`:

```shell
$ helm repo add tractusx-dev https://eclipse-tractusx.github.io/charts/dev
$ helm install puris tractusx-dev/policy-hub
$ helm install puris tractusx-dev/puris
```
To install the helm chart into your cluster with your values:

```shell
$ helm install -f your-values.yaml puris tractusx-dev/policy-hub
$ helm install -f your-values.yaml puris tractusx-dev/puris
```

To use the helm chart as a dependency:
Expand Down
20 changes: 20 additions & 0 deletions docs/admin/Admin_Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,26 @@ _**ATTENTION**: Usage Purposes are no credentials than can be enforced technical
supported within Catena-X in the [odrl profile](https://github.com/catenax-eV/cx-odrl-profile/blob/main/profile.md)
of the current release._

## Configure ERP Update

To use an ERP Adapter, you need to configure the information below `backend.puris.erpadapter`:

| Helm | Docker |
|------------------------------------------|----------------------------------|
| backend.puris.erpadapter.enabled | PURIS_ERPADAPTER_ENABLED |
| backend.puris.erpadapter.url | PURIS_ERPADAPTER_URL |
| backend.puris.erpadapter.authkey | PURIS_ERPADAPTER_AUTHKEY |
| backend.puris.erpadapter.refreshinterval | PURIS_ERPADAPTER_REFRESHINTERVAL |
| backend.puris.erpadapter.timelimit | PURIS_ERPADAPTER_TIMELIMIT |

The configuration of the refreshinterval and the timelimit are considered as follows:

- timelimit: whenever an erp update has been scheduled, then it is scheduled for n days. It gets rescheduled for n days
whenever triggered. Thus, no further update will be done after n days of no trigger.
- refreshinterval: defines in minutes after which time an update is performed for the scheduled updates.

Refer to the [helm chart's README](../../charts/puris/README.md) for further information.

## Rate Limiting using nginx

Rate limiting is by default enabled in the puris frontend served by nginx and can be dynamically configured.
Expand Down
Loading
Loading