diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 5f5e29995..4f51b1f25 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -13,7 +13,7 @@ on:
- released
pull_request:
paths-ignore:
- - 'deployment/helm/**'
+ - 'charts/**'
branches:
- '*'
@@ -46,7 +46,7 @@ jobs:
fetch-depth: 0
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.1
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -69,7 +69,7 @@ jobs:
fetch-depth: 0
-
name: Set up JDK 11
- uses: actions/setup-java@v3.3.0
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -79,7 +79,7 @@ jobs:
run: git submodule update --init
-
name: Build edc with Gradle to get specific snapshot
- run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
working-directory: edc
-
name: Cache SonarCloud packages
@@ -103,6 +103,37 @@ jobs:
-Dsonar.coverage.jacoco.xmlReportPaths=${GITHUB_WORKSPACE}/edc-tests/target/site/jacoco-aggregate/jacoco.xml \
-Dsonar.verbose=true
+ build-extensions:
+ runs-on: ubuntu-latest
+ needs: [ secret-presence, verify-formatting ]
+ steps:
+ # Set-Up
+ -
+ name: Checkout
+ uses: actions/checkout@v3
+ -
+ name: Set up JDK 11
+ uses: actions/setup-java@v3.5.1
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ cache: 'maven'
+ # Build
+ -
+ name: Init git submodule
+ run: git submodule update --init
+ -
+ name: Build edc with Gradle to get specific snapshot
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
+ working-directory: edc
+ -
+ name: Build Extensions
+ run: |-
+ ./mvnw -s settings.xml -B -f edc-extensions -am package
+ env:
+ GITHUB_PACKAGE_USERNAME: ${{ github.actor }}
+ GITHUB_PACKAGE_PASSWORD: ${{ secrets.CXNG_GHCR_PAT }}
+
build-controlplane:
runs-on: ubuntu-latest
needs: [ secret-presence, verify-formatting ]
@@ -129,7 +160,7 @@ jobs:
password: ${{ secrets.CXNG_GHCR_PAT }}
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.0
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -140,7 +171,7 @@ jobs:
run: git submodule update --init
-
name: Build edc with Gradle to get specific snapshot
- run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
working-directory: edc
-
name: Build Controlplane
@@ -218,7 +249,7 @@ jobs:
password: ${{ secrets.CXNG_GHCR_PAT }}
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.1
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -229,7 +260,7 @@ jobs:
run: git submodule update --init
-
name: Build edc with Gradle to get specific snapshot
- run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
working-directory: edc
-
name: Build Dataplane
diff --git a/.github/workflows/business-tests.yaml b/.github/workflows/business-tests.yaml
index 0932f6b6a..71a6f63d9 100644
--- a/.github/workflows/business-tests.yaml
+++ b/.github/workflows/business-tests.yaml
@@ -23,7 +23,7 @@ jobs:
uses: actions/checkout@v3
-
name: Set-Up JDK 11
- uses: actions/setup-java@v3.4.0
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -62,7 +62,7 @@ jobs:
EOF
-
name: Create k8s Kind Cluster
- uses: helm/kind-action@v1.3.0
+ uses: helm/kind-action@v1.4.0
with:
config: kind.config.yaml
@@ -74,7 +74,7 @@ jobs:
run: git submodule update --init
-
name: Build edc with Gradle to get specific snapshot
- run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
working-directory: edc
-
name: Build edc-controlplane-postgresql-hashicorp-vault
diff --git a/.github/workflows/draft-new-release.yaml b/.github/workflows/draft-new-release.yaml
index 7e3096349..051192bf1 100644
--- a/.github/workflows/draft-new-release.yaml
+++ b/.github/workflows/draft-new-release.yaml
@@ -29,7 +29,7 @@ jobs:
git config user.email noreply@github.com
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.1
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -42,24 +42,24 @@ jobs:
GITHUB_PACKAGE_USERNAME: ${{ github.actor }}
GITHUB_PACKAGE_PASSWORD: ${{ secrets.CXNG_GHCR_PAT }}
-
- name: Bump version in deployment/helm
- uses: mikefarah/yq@v4.27.3
+ name: Bump version in /charts
+ uses: mikefarah/yq@v4.27.5
with:
cmd: |-
- find deployment/helm -name Chart.yaml | xargs -n1 yq -i '.appVersion = "${{ github.event.inputs.version }}" | .version = "${{ github.event.inputs.version }}"'
+ find charts -name Chart.yaml | xargs -n1 yq -i '.appVersion = "${{ github.event.inputs.version }}" | .version = "${{ github.event.inputs.version }}"'
-
name: Update Chart READMEs
uses: addnab/docker-run-action@v3
with:
image: jnorwood/helm-docs:v1.10.0
- options: -v ${{ github.workspace }}/deployment/helm:/helm-docs
+ options: -v ${{ github.workspace }}/charts:/helm-docs
run: |
helm-docs --log-level debug
-
name: Commit changelog and manifest files
id: make-commit
run: |
- git add CHANGELOG.md $(find -name pom.xml) $(find deployment/helm -name Chart.yaml) $(find deployment/helm -name README.md)
+ git add CHANGELOG.md $(find -name pom.xml) $(find charts -name Chart.yaml) $(find charts -name README.md)
git commit --message "Prepare release ${{ github.event.inputs.version }}"
echo "::set-output name=commit::$(git rev-parse HEAD)"
diff --git a/.github/workflows/helm-lint.yaml b/.github/workflows/helm-lint.yaml
index 557d91d5a..bf341b5d6 100644
--- a/.github/workflows/helm-lint.yaml
+++ b/.github/workflows/helm-lint.yaml
@@ -10,13 +10,13 @@ on:
- '[0-9]+.[0-9]+.[0-9]+'
paths-ignore:
- '**'
- - '!deployment/helm/**'
+ - '!charts/**'
pull_request:
branches:
- '*'
paths-ignore:
- '**'
- - '!deployment/helm/**'
+ - '!charts/**'
jobs:
helm-lint:
@@ -42,7 +42,7 @@ jobs:
python-version: 3.7
-
name: chart-testing (setup)
- uses: helm/chart-testing-action@v2.3.0
+ uses: helm/chart-testing-action@v2.3.1
#####################
### Chart Testing ###
#####################
diff --git a/.github/workflows/kics.yaml b/.github/workflows/kics.yml
similarity index 100%
rename from .github/workflows/kics.yaml
rename to .github/workflows/kics.yml
diff --git a/.github/workflows/publish-new-release.yml b/.github/workflows/publish-new-release.yml
index 4d5a3f6d0..d10185c72 100644
--- a/.github/workflows/publish-new-release.yml
+++ b/.github/workflows/publish-new-release.yml
@@ -15,13 +15,11 @@ jobs:
runs-on: ubuntu-latest
outputs:
CXNG_GHCR_PAT: ${{ steps.secret-presence.outputs.CXNG_GHCR_PAT }}
- CXNG_RELEASE_PAT: ${{ steps.secret-presence.outputs.CXNG_RELEASE_PAT }}
steps:
- name: Check whether secrets exist
id: secret-presence
run: |
[ ! -z "${{ secrets.CXNG_GHCR_PAT }}" ] && echo "::set-output name=CXNG_GHCR_PAT::true"
- [ ! -z "${{ secrets.CXNG_RELEASE_PAT }}" ] && echo "::set-output name=CXNG_RELEASE_PAT::true"
exit 0
# Gate: Check release version presence
@@ -69,7 +67,7 @@ jobs:
uses: actions/checkout@v3
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.1
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
@@ -79,13 +77,13 @@ jobs:
run: git submodule update --init
-
name: Build edc with Gradle to get specific snapshot
- run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT
+ run: ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220922-SNAPSHOT -xjavadoc
working-directory: edc
-
name: Deploy
run: |-
./mvnw -s settings.xml \
- -Pdelombok -pl '!edc-controlplane/edc-controlplane-memory,!edc-controlplane/edc-controlplane-postgresql,!edc-controlplane/edc-controlplane-postgresql-hashicorp-vault,!edc-dataplane/edc-dataplane-azure-vault,!edc-dataplane/edc-dataplane-hashicorp-vault,!edc-tests' \
+ -Pdelombok -pl '!edc-tests' \
-DaltReleaseDeploymentRepository=github::https://maven.pkg.github.com/${{ github.repository }} \
-Dmaven.test.skip=true -B package deploy:deploy
env:
@@ -121,7 +119,7 @@ jobs:
git config user.email noreply@github.com
# Package all charts
- find deployment/helm -name Chart.yaml -not -path "./edc-tests/*" | xargs -n1 dirname | xargs -n1 helm package -u -d helm-charts
+ find charts -name Chart.yaml -not -path "./edc-tests/*" | xargs -n1 dirname | xargs -n1 helm package -u -d helm-charts
git checkout gh-pages || git checkout -b gh-pages
git pull --rebase origin gh-pages
@@ -140,7 +138,7 @@ jobs:
name: Publish new github release
needs: [ secret-presence, release-version ]
runs-on: ubuntu-latest
- if: github.event.pull_request.merged == true && needs.secret-presence.outputs.CXNG_RELEASE_PAT && needs.release-version.outputs.RELEASE_VERSION
+ if: github.event.pull_request.merged == true && needs.release-version.outputs.RELEASE_VERSION
steps:
-
name: Export RELEASE_VERSION env
@@ -172,7 +170,7 @@ jobs:
id: create_release
uses: thomaseizinger/create-release@1.0.0
env:
- GITHUB_TOKEN: ${{ secrets.CXNG_RELEASE_PAT }}
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
target_commitish: ${{ github.event.pull_request.merge_commit_sha }}
tag_name: ${{ env.RELEASE_VERSION }}
@@ -181,7 +179,7 @@ jobs:
prerelease: false
-
name: Set up JDK 11
- uses: actions/setup-java@v3.4.1
+ uses: actions/setup-java@v3.5.1
with:
java-version: '11'
distribution: 'adopt'
diff --git a/.github/workflows/trivy.yaml b/.github/workflows/trivy.yml
similarity index 100%
rename from .github/workflows/trivy.yaml
rename to .github/workflows/trivy.yml
diff --git a/.github/workflows/veracode.yaml b/.github/workflows/veracode.yaml
new file mode 100644
index 000000000..f3230f5a2
--- /dev/null
+++ b/.github/workflows/veracode.yaml
@@ -0,0 +1,2 @@
+# file to satisfy check in https://gh-org-checks.core.demo.catena-x.net/
+# veracode runs inside the build.yaml
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5a4429ff6..83c1881f6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,22 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
+## [0.1.2] - 2022-09-30
+
+### Added
+
+- Introduced DEPENDENCIES file
+
+### Changed
+
+- Moved helm charts from `deployment/helm` to `charts`
+- Replaced distroless image with alpine in all docker images
+- Update EDC commit to `740c100ac162bc41b1968c232ad81f7d739aefa9`
+
## [0.1.1] - 2022-09-04
-**Important Note**: Please consolidate the migration documentation before updating your connector. [documentation](/docs/migration/Version_0.0.x_0.1.x.md).
+**Important Note**: Please consolidate the migration documentation before updating your connector. [documentation](/docs/migration/Version_0.1.0_0.1.1.md).
### Added
-- Control-Plane Extension ([cx-oauth2](/edc-extensions/cx-oauth2/README.md))
+- Control-Plane Extension ([cx-oauth2](/edc-extensions/cx-oauth2/README.md))
### Changed
-- Introduced git submodule to import EDC dependencies (instead of snapshot- or milestone artifact)
-- Helm Charts: TLS secret name is now configurable
+- Introduced git submodule to import EDC dependencies (instead of snapshot- or milestone artifact)
+- Helm Charts: TLS secret name is now configurable
### Fixed
-- Connectors with Azure Vault extension are now starting again [link](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1892)
+- Connectors with Azure Vault extension are now starting again [link](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1892)
## [0.1.0] - 2022-08-19
@@ -96,7 +108,9 @@ corresponding [documentation](/docs/migration/Version_0.0.x_0.1.x.md).
## [0.0.1] - 2022-05-13
-[Unreleased]: https://github.com/catenax-ng/product-edc/compare/0.1.1...HEAD
+[Unreleased]: https://github.com/catenax-ng/product-edc/compare/0.1.2...HEAD
+
+[0.1.2]: https://github.com/catenax-ng/product-edc/compare/0.1.1...0.1.2
[0.1.1]: https://github.com/catenax-ng/product-edc/compare/0.1.0...0.1.1
diff --git a/DEPENDENCIES b/DEPENDENCIES
new file mode 100644
index 000000000..c6b2f625b
--- /dev/null
+++ b/DEPENDENCIES
@@ -0,0 +1,169 @@
+maven/mavencentral/com.azure/azure-core-http-netty/1.12.0, MIT, approved, clearlydefined
+maven/mavencentral/com.azure/azure-core/1.28.0, MIT, approved, clearlydefined
+maven/mavencentral/com.azure/azure-identity/1.5.1, MIT, approved, clearlydefined
+maven/mavencentral/com.azure/azure-security-keyvault-secrets/4.4.2, MIT, approved, clearlydefined
+maven/mavencentral/com.electronwill.night-config/core/3.6.6, NOASSERTION, restricted, clearlydefined
+maven/mavencentral/com.electronwill.night-config/toml/3.6.6, NOASSERTION, restricted, clearlydefined
+maven/mavencentral/com.fasterxml.jackson.core/jackson-annotations/2.13.3, Apache-2.0, approved, CQ24135
+maven/mavencentral/com.fasterxml.jackson.core/jackson-core/2.13.3, Apache-2.0, approved, CQ24134
+maven/mavencentral/com.fasterxml.jackson.core/jackson-databind/2.13.3, Apache-2.0, approved, CQ24136
+maven/mavencentral/com.fasterxml.jackson.dataformat/jackson-dataformat-xml/2.13.2, Apache-2.0, restricted, clearlydefined
+maven/mavencentral/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.13.3, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.fasterxml.woodstox/woodstox-core/6.2.7, Apache-2.0, approved, CQ23040
+maven/mavencentral/com.github.stephenc.jcip/jcip-annotations/1.0-1, Apache-2.0, approved, CQ21949
+maven/mavencentral/com.microsoft.azure/msal4j-persistence-extension/1.1.0, MIT, approved, clearlydefined
+maven/mavencentral/com.microsoft.azure/msal4j/1.12.0, MIT, approved, clearlydefined
+maven/mavencentral/com.nimbusds/content-type/2.2, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.nimbusds/lang-tag/1.6, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.21, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.24.3, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.nimbusds/oauth2-oidc-sdk/9.32, Apache-2.0, approved, clearlydefined
+maven/mavencentral/com.squareup.okhttp3/okhttp/4.9.3, Apache-2.0 AND MPL-2.0, approved, #3225
+maven/mavencentral/com.squareup.okio/okio/2.8.0, Apache-2.0, approved, clearlydefined
+maven/mavencentral/de.fraunhofer.iais.eis.ids.infomodel/java/4.1.3, , restricted, clearlydefined
+maven/mavencentral/de.fraunhofer.iais.eis.infomodel/util/4.1.3, , restricted, clearlydefined
+maven/mavencentral/dev.failsafe/failsafe/3.2.4, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.micrometer/micrometer-core/1.8.2, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-buffer/4.1.76.Final, Apache-2.0, approved, CQ21842
+maven/mavencentral/io.netty/netty-codec-dns/4.1.75.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-codec-http/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-codec-http2/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-codec-socks/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-codec/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-common/4.1.76.Final, Apache-2.0 AND MIT AND CC0-1.0, approved, CQ21843
+maven/mavencentral/io.netty/netty-handler-proxy/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-handler/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-resolver-dns-classes-macos/4.1.75.Final, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-resolver-dns-native-macos/4.1.75.Final, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-resolver-dns/4.1.75.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-resolver/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-tcnative-boringssl-static/2.0.51.Final, Apache-2.0 OR LicenseRef-Public-Domain OR BSD-2-Clause OR MIT, approved, CQ15280
+maven/mavencentral/io.netty/netty-tcnative-classes/2.0.51.Final, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-transport-classes-epoll/4.1.76.Final, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-transport-classes-kqueue/4.1.76.Final, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.netty/netty-transport-native-epoll/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-transport-native-kqueue/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.netty/netty-transport/4.1.76.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926
+maven/mavencentral/io.projectreactor.netty/reactor-netty-core/1.0.18, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.projectreactor.netty/reactor-netty-http/1.0.18, Apache-2.0, approved, clearlydefined
+maven/mavencentral/io.projectreactor/reactor-core/3.4.17, Apache-2.0, approved, clearlydefined
+maven/mavencentral/jakarta.ws.rs/jakarta.ws.rs-api/3.1.0, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.rest
+maven/mavencentral/javax.validation/validation-api/2.0.1.Final, Apache-2.0, approved, CQ15302
+maven/mavencentral/net.catenax.edc.extensions/business-partner-validation/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc.extensions/cx-oauth2/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc.extensions/data-encryption/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc.extensions/dataplane-selector-configuration/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc.extensions/hashicorp-vault/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc.extensions/postgresql-migration/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc/edc-controlplane-base/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc/edc-controlplane-postgresql/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.catenax.edc/edc-dataplane-base/0.1.1-SNAPSHOT, , restricted, clearlydefined
+maven/mavencentral/net.java.dev.jna/jna-platform/5.6.0, Apache-2.0 OR LGPL-2.1-or-later, approved, CQ22390
+maven/mavencentral/net.java.dev.jna/jna/5.5.0, Apache-2.0 or LGPL-2.1, approved, #1508
+maven/mavencentral/net.minidev/accessors-smart/2.4.8, Apache-2.0, approved, clearlydefined
+maven/mavencentral/net.minidev/json-smart/2.4.8, Apache-2.0, approved, #3288
+maven/mavencentral/org.bouncycastle/bcpkix-jdk15on/1.70, MIT, approved, clearlydefined
+maven/mavencentral/org.bouncycastle/bcprov-jdk15on/1.70, MIT, approved, #1712
+maven/mavencentral/org.bouncycastle/bcutil-jdk15on/1.70, MIT, approved, clearlydefined
+maven/mavencentral/org.codehaus.woodstox/stax2-api/4.2.1, BSD-2-Clause, approved, #2670
+maven/mavencentral/org.eclipse.dataspaceconnector/apache-commons-pool-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/api-configuration/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/api-core/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/asset-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/asset-index-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/auth-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/auth-tokenbased/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/azure-vault/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/catalog-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/catalog-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/common-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/common-util/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contract-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contract/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contractagreement-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contractdefinition-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contractdefinition-store-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contractnegotiation-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/contractnegotiation-store-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/control-plane-core/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/control-plane-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/core-base/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/core-boot/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/core-micrometer/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/core-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-management-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-framework/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-http/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-s3/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-selector-client/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-selector-core/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-selector-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-transfer-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/data-plane-transfer-sync/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/filesystem-configuration/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/http-receiver/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/http/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-api-configuration/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-api-multipart-dispatcher-v1/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-api-multipart-endpoint-v1/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-api-transform-v1/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-core/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/ids-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jdk-logger-monitor/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jersey-micrometer/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jersey/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jetty-micrometer/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jetty/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/jwt-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/oauth2-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/observability-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-engine-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-engine/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-evaluator/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-model/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policy-store-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/policydefinition-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/runtime-metamodel/0.0.1-20220929.123028-13, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/s3-core/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transaction-datasource-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transaction-local/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transaction-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transfer-process-store-sql/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transfer-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transfer/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transferprocess-api/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/transport-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.eclipse.dataspaceconnector/web-spi/0.0.1-20220902-SNAPSHOT, Apache-2.0, approved, technology.dataspaceconnector
+maven/mavencentral/org.flywaydb/flyway-core/9.3.1, NOASSERTION, restricted, clearlydefined
+maven/mavencentral/org.hdrhistogram/HdrHistogram/2.1.12, , approved, CQ13192
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-common/1.4.0, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib/1.4.10, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.jetbrains/annotations/15.0, Apache-2.0, approved, clearlydefined
+maven/mavencentral/org.ow2.asm/asm/9.3, BSD-3-Clause, approved, CQ24052
+maven/mavencentral/org.postgresql/postgresql/42.5.0, BSD-2-Clause, approved, #3416
+maven/mavencentral/org.projectlombok/lombok/1.18.24, MIT AND LicenseRef-Public-Domain, approved, CQ23907
+maven/mavencentral/org.reactivestreams/reactive-streams/1.0.3, CC0-1.0, approved, CQ16332
+maven/mavencentral/org.slf4j/slf4j-api/2.0.0-beta1, MIT, approved, CQ24150
+maven/mavencentral/software.amazon.awssdk/annotations/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/arns/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/auth/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/aws-core/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/aws-query-protocol/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/aws-xml-protocol/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/http-client-spi/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/iam/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/json-utils/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/metrics-spi/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/profiles/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/protocol-core/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/regions/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/s3/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/sdk-core/2.17.278, Apache-2.0, approved, #3167
+maven/mavencentral/software.amazon.awssdk/sts/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.awssdk/third-party-jackson-core/2.17.278, Apache-2.0, approved, #3166
+maven/mavencentral/software.amazon.awssdk/utils/2.17.278, , restricted, clearlydefined
+maven/mavencentral/software.amazon.eventstream/eventstream/1.0.1, Apache-2.0, approved, clearlydefined
diff --git a/README.md b/README.md
index c720d758f..4a7d0fe38 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,61 @@
-# Catena-X specific edc apps
+
-This project provides pre-built Control-Plane and Data-Plane [docker](https://www.docker.com/) images and [helm](https://helm.sh/) charts of the [Eclipse DataSpaceConnector Project](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector).
+
+[![Contributors][contributors-shield]][contributors-url]
+[![Stargazers][stars-shield]][stars-url]
+[![Apache 2.0 License][license-shield]][license-url]
+[![Latest Release][release-shield]][release-url]
+
+
+
+
+
+
+
+
+ Table of Contents
+
+ -
+ About The Project
+
+ -
+ Inventory
+
+ -
+ Getting Started
+
+
+ - License
+
+
+
+## About The Project
+
+The project provides pre-built control- and data-plane [docker](https://www.docker.com/) images and [helm](https://helm.sh/) charts of the [Eclipse DataSpaceConnector Project](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector).
+
+(back to top)
## Inventory
@@ -26,10 +81,41 @@ Derivatives of the Data-Plane can be found here
* [edc-dataplane-hashicorp-vault](edc-dataplane/edc-dataplane-hashicorp-vault) with dependency onto
* [Hashicorp Vault](https://www.vaultproject.io/)
-## Prerequisites
+(back to top)
+
+## Getting Started
+
+(back to top)
-## Build
+### Build
+
+1. Build EDC Submodule Dependencies
+```shell
+git submodule update --init
+cd edc && ./gradlew publishToMavenLocal -Pskip.signing=true -PedcVersion=0.0.1-20220902-SNAPSHOT -xjavadoc && cd ..
+```
+
+2. Build Product-EDC Container Images
```shell
./mvnw package -Pwith-docker-image
```
+
+(back to top)
+
+## License
+
+Distributed under the Apache 2.0 License. See [LICENSE](https://github.com/catenax-ng/product-edc/blob/main/LICENSE) for more information.
+
+(back to top)
+
+
+
+[contributors-shield]: https://img.shields.io/github/contributors/catenax-ng/product-edc.svg?style=for-the-badge
+[contributors-url]: https://github.com/catenax-ng/product-edc/graphs/contributors
+[stars-shield]: https://img.shields.io/github/stars/catenax-ng/product-edc.svg?style=for-the-badge
+[stars-url]: https://github.com/catenax-ng/product-edc/stargazers
+[license-shield]: https://img.shields.io/github/license/catenax-ng/product-edc.svg?style=for-the-badge
+[license-url]: https://github.com/catenax-ng/product-edc/blob/main/LICENSE
+[release-shield]: https://img.shields.io/github/v/release/catenax-ng/product-edc.svg?style=for-the-badge
+[release-url]: https://github.com/catenax-ng/product-edc/releases
diff --git a/deployment/helm/README.md b/charts/README.md
similarity index 100%
rename from deployment/helm/README.md
rename to charts/README.md
diff --git a/deployment/helm/edc-controlplane/.helmignore b/charts/edc-controlplane/.helmignore
similarity index 100%
rename from deployment/helm/edc-controlplane/.helmignore
rename to charts/edc-controlplane/.helmignore
diff --git a/deployment/helm/edc-controlplane/Chart.yaml b/charts/edc-controlplane/Chart.yaml
similarity index 68%
rename from deployment/helm/edc-controlplane/Chart.yaml
rename to charts/edc-controlplane/Chart.yaml
index d81685edc..a0e964e0d 100644
--- a/deployment/helm/edc-controlplane/Chart.yaml
+++ b/charts/edc-controlplane/Chart.yaml
@@ -3,8 +3,8 @@ apiVersion: v2
name: edc-controlplane
description: >-
EDC Control-Plane - The Eclipse DataSpaceConnector administration layer with responsibility of resource management and govern contracts and data transfers
-home: https://github.com/catenax-ng/product-edc/deployment/helm/edc-controlplane
+home: https://github.com/catenax-ng/product-edc/charts/edc-controlplane
type: application
-appVersion: "0.1.1"
-version: 0.1.1
+appVersion: "0.1.2"
+version: 0.1.2
maintainers: []
diff --git a/deployment/helm/edc-controlplane/README.md b/charts/edc-controlplane/README.md
similarity index 98%
rename from deployment/helm/edc-controlplane/README.md
rename to charts/edc-controlplane/README.md
index 46e933039..2ea1be08a 100644
--- a/deployment/helm/edc-controlplane/README.md
+++ b/charts/edc-controlplane/README.md
@@ -1,15 +1,15 @@
# edc-controlplane
-![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.1.1](https://img.shields.io/badge/AppVersion-0.1.1-informational?style=flat-square)
+![Version: 0.1.2](https://img.shields.io/badge/Version-0.1.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.1.2](https://img.shields.io/badge/AppVersion-0.1.2-informational?style=flat-square)
EDC Control-Plane - The Eclipse DataSpaceConnector administration layer with responsibility of resource management and govern contracts and data transfers
-**Homepage:**
+**Homepage:**
## TL;DR
```shell
$ helm repo add catenax-ng-product-edc https://catenax-ng.github.io/product-edc
-$ helm install my-release catenax-ng-product-edc/edc-controlplane --version 0.1.1
+$ helm install my-release catenax-ng-product-edc/edc-controlplane --version 0.1.2
```
## Values
diff --git a/deployment/helm/edc-controlplane/README.md.gotmpl b/charts/edc-controlplane/README.md.gotmpl
similarity index 100%
rename from deployment/helm/edc-controlplane/README.md.gotmpl
rename to charts/edc-controlplane/README.md.gotmpl
diff --git a/deployment/helm/edc-controlplane/templates/NOTES.txt b/charts/edc-controlplane/templates/NOTES.txt
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/NOTES.txt
rename to charts/edc-controlplane/templates/NOTES.txt
diff --git a/deployment/helm/edc-controlplane/templates/_helpers.tpl b/charts/edc-controlplane/templates/_helpers.tpl
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/_helpers.tpl
rename to charts/edc-controlplane/templates/_helpers.tpl
diff --git a/deployment/helm/edc-controlplane/templates/configmap-env.yaml b/charts/edc-controlplane/templates/configmap-env.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/configmap-env.yaml
rename to charts/edc-controlplane/templates/configmap-env.yaml
diff --git a/deployment/helm/edc-controlplane/templates/configmap.yaml b/charts/edc-controlplane/templates/configmap.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/configmap.yaml
rename to charts/edc-controlplane/templates/configmap.yaml
diff --git a/deployment/helm/edc-controlplane/templates/deployment.yaml b/charts/edc-controlplane/templates/deployment.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/deployment.yaml
rename to charts/edc-controlplane/templates/deployment.yaml
diff --git a/deployment/helm/edc-controlplane/templates/hpa.yaml b/charts/edc-controlplane/templates/hpa.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/hpa.yaml
rename to charts/edc-controlplane/templates/hpa.yaml
diff --git a/deployment/helm/edc-controlplane/templates/imagepullsecret.yaml b/charts/edc-controlplane/templates/imagepullsecret.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/imagepullsecret.yaml
rename to charts/edc-controlplane/templates/imagepullsecret.yaml
diff --git a/deployment/helm/edc-controlplane/templates/ingress.yaml b/charts/edc-controlplane/templates/ingress.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/ingress.yaml
rename to charts/edc-controlplane/templates/ingress.yaml
diff --git a/deployment/helm/edc-controlplane/templates/service.yaml b/charts/edc-controlplane/templates/service.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/service.yaml
rename to charts/edc-controlplane/templates/service.yaml
diff --git a/deployment/helm/edc-controlplane/templates/serviceaccount.yaml b/charts/edc-controlplane/templates/serviceaccount.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/templates/serviceaccount.yaml
rename to charts/edc-controlplane/templates/serviceaccount.yaml
diff --git a/deployment/helm/edc-controlplane/values.yaml b/charts/edc-controlplane/values.yaml
similarity index 100%
rename from deployment/helm/edc-controlplane/values.yaml
rename to charts/edc-controlplane/values.yaml
diff --git a/deployment/helm/edc-dataplane/.helmignore b/charts/edc-dataplane/.helmignore
similarity index 100%
rename from deployment/helm/edc-dataplane/.helmignore
rename to charts/edc-dataplane/.helmignore
diff --git a/deployment/helm/edc-dataplane/Chart.yaml b/charts/edc-dataplane/Chart.yaml
similarity index 65%
rename from deployment/helm/edc-dataplane/Chart.yaml
rename to charts/edc-dataplane/Chart.yaml
index e9d513ff4..4610c99e8 100644
--- a/deployment/helm/edc-dataplane/Chart.yaml
+++ b/charts/edc-dataplane/Chart.yaml
@@ -3,8 +3,8 @@ apiVersion: v2
name: edc-dataplane
description: >-
EDC Data-Plane - The Eclipse DataSpaceConnector data layer with responsibility of transferring and receiving data streams
-home: https://github.com/catenax-ng/product-edc/deployment/helm/edc-dataplane
+home: https://github.com/catenax-ng/product-edc/charts/edc-dataplane
type: application
-appVersion: "0.1.1"
-version: 0.1.1
+appVersion: "0.1.2"
+version: 0.1.2
maintainers: []
diff --git a/deployment/helm/edc-dataplane/README.md b/charts/edc-dataplane/README.md
similarity index 98%
rename from deployment/helm/edc-dataplane/README.md
rename to charts/edc-dataplane/README.md
index fbedf9dec..de73cdb84 100644
--- a/deployment/helm/edc-dataplane/README.md
+++ b/charts/edc-dataplane/README.md
@@ -1,15 +1,15 @@
# edc-dataplane
-![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.1.1](https://img.shields.io/badge/AppVersion-0.1.1-informational?style=flat-square)
+![Version: 0.1.2](https://img.shields.io/badge/Version-0.1.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.1.2](https://img.shields.io/badge/AppVersion-0.1.2-informational?style=flat-square)
EDC Data-Plane - The Eclipse DataSpaceConnector data layer with responsibility of transferring and receiving data streams
-**Homepage:**
+**Homepage:**
## TL;DR
```shell
$ helm repo add catenax-ng-product-edc https://catenax-ng.github.io/product-edc
-$ helm install my-release catenax-ng-product-edc/edc-dataplane --version 0.1.1
+$ helm install my-release catenax-ng-product-edc/edc-dataplane --version 0.1.2
```
## Values
diff --git a/deployment/helm/edc-dataplane/README.md.gotmpl b/charts/edc-dataplane/README.md.gotmpl
similarity index 100%
rename from deployment/helm/edc-dataplane/README.md.gotmpl
rename to charts/edc-dataplane/README.md.gotmpl
diff --git a/deployment/helm/edc-dataplane/templates/NOTES.txt b/charts/edc-dataplane/templates/NOTES.txt
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/NOTES.txt
rename to charts/edc-dataplane/templates/NOTES.txt
diff --git a/deployment/helm/edc-dataplane/templates/_helpers.tpl b/charts/edc-dataplane/templates/_helpers.tpl
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/_helpers.tpl
rename to charts/edc-dataplane/templates/_helpers.tpl
diff --git a/deployment/helm/edc-dataplane/templates/configmap-env.yaml b/charts/edc-dataplane/templates/configmap-env.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/configmap-env.yaml
rename to charts/edc-dataplane/templates/configmap-env.yaml
diff --git a/deployment/helm/edc-dataplane/templates/configmap.yaml b/charts/edc-dataplane/templates/configmap.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/configmap.yaml
rename to charts/edc-dataplane/templates/configmap.yaml
diff --git a/deployment/helm/edc-dataplane/templates/deployment.yaml b/charts/edc-dataplane/templates/deployment.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/deployment.yaml
rename to charts/edc-dataplane/templates/deployment.yaml
diff --git a/deployment/helm/edc-dataplane/templates/hpa.yaml b/charts/edc-dataplane/templates/hpa.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/hpa.yaml
rename to charts/edc-dataplane/templates/hpa.yaml
diff --git a/deployment/helm/edc-dataplane/templates/imagepullsecret.yaml b/charts/edc-dataplane/templates/imagepullsecret.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/imagepullsecret.yaml
rename to charts/edc-dataplane/templates/imagepullsecret.yaml
diff --git a/deployment/helm/edc-dataplane/templates/ingress.yaml b/charts/edc-dataplane/templates/ingress.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/ingress.yaml
rename to charts/edc-dataplane/templates/ingress.yaml
diff --git a/deployment/helm/edc-dataplane/templates/service.yaml b/charts/edc-dataplane/templates/service.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/service.yaml
rename to charts/edc-dataplane/templates/service.yaml
diff --git a/deployment/helm/edc-dataplane/templates/serviceaccount.yaml b/charts/edc-dataplane/templates/serviceaccount.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/templates/serviceaccount.yaml
rename to charts/edc-dataplane/templates/serviceaccount.yaml
diff --git a/deployment/helm/edc-dataplane/values.yaml b/charts/edc-dataplane/values.yaml
similarity index 100%
rename from deployment/helm/edc-dataplane/values.yaml
rename to charts/edc-dataplane/values.yaml
diff --git a/docs/data-transfer/Transfer Data.md b/docs/data-transfer/Transfer Data.md
index 529c06416..5de4b3111 100644
--- a/docs/data-transfer/Transfer Data.md
+++ b/docs/data-transfer/Transfer Data.md
@@ -64,20 +64,71 @@ source documentation ([link](https://github.com/eclipse-dataspaceconnector/DataS
**Run**
+
The following commands will create an Asset, a Policy and a Contract Definition.
For simplicity `https://jsonplaceholder.typicode.com/todos/1` is used as data source of the asset, but could be any
other API, that is reachable from the Provider Data Plane.
```bash
-curl -X POST "$PLATO_DATAMGMT_URL/data/assets" --header "X-Api-Key: password" --header "Content-Type: application/json" --data "{ \"asset\": { \"properties\": { \"asset:prop:id\": \"1\", \"asset:prop:description\": \"Product EDC Demo Asset\" } }, \"dataAddress\": { \"properties\": { \"type\": \"HttpData\", \"baseUrl\": \"https://jsonplaceholder.typicode.com/todos/1\" } } }" -s -o /dev/null -w 'Response Code: %{http_code}\n'
+curl -X POST "$PLATO_DATAMGMT_URL/data/assets" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ --data '{
+ "asset": {
+ "properties": {
+ "asset:prop:id": "1",
+ "asset:prop:description": "Product EDC Demo Asset"
+ }
+ },
+ "dataAddress": {
+ "properties": {
+ "type": "HttpData",
+ "baseUrl": "https://jsonplaceholder.typicode.com/todos/1"
+ }
+ }
+ }' \
+ -s -o /dev/null -w 'Response Code: %{http_code}\n'
```
```bash
-curl -X POST "$PLATO_DATAMGMT_URL/data/policydefinitions" --header "X-Api-Key: password" --header "Content-Type: application/json" --data "{ \"id\": \"1\", \"policy\": { \"prohibitions\": [], \"obligations\": [], \"permissions\": [ { \"edctype\": \"dataspaceconnector:permission\", \"action\": { \"type\": \"USE\" }, \"constraints\": [] } ] } }" -s -o /dev/null -w 'Response Code: %{http_code}\n'
+curl -X POST "${PLATO_DATAMGMT_URL}/data/policydefinitions" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ --data '{
+ "id": "1",
+ "policy": {
+ "prohibitions": [],
+ "obligations": [],
+ "permissions": [
+ {
+ "edctype": "dataspaceconnector:permission",
+ "action": { "type": "USE" },
+ "constraints": []
+ }
+ ]
+ }
+ }' \
+ -s -o /dev/null -w 'Response Code: %{http_code}\n'
```
+
```bash
-curl -X POST "$PLATO_DATAMGMT_URL/data/contractdefinitions" --header "X-Api-Key: password" --header "Content-Type: application/json" --data "{ \"id\": \"1\", \"criteria\": [ { \"operandLeft\": \"asset:prop:id\", \"operator\": \"=\", \"operandRight\": \"1\" } ], \"accessPolicyId\": \"1\", \"contractPolicyId\": \"1\" }" -s -o /dev/null -w 'Response Code: %{http_code}\n'
+curl -X POST "${PLATO_DATAMGMT_URL}/data/contractdefinitions" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ --data '{
+ "id": "1",
+ "criteria": [
+ {
+ "operandLeft": "asset:prop:id",
+ "operator": "=",
+ "operandRight": "1"
+ }
+ ],
+ "accessPolicyId": "1",
+ "contractPolicyId": "1"
+ }' \
+ -s -o /dev/null -w 'Response Code: %{http_code}\n'
```
## 2. Request Contract Offer Catalog
@@ -93,7 +144,11 @@ connectors, that intent to send messages to each other, have the same DAPS insta
**Run**
```bash
-curl -G -X GET "$SOKRATES_DATAMGMT_URL/data/catalog" --data-urlencode "providerUrl=$PLATO_IDS_URL/api/v1/ids/data" --header "X-Api-Key: password" --header "Content-Type: application/json" -s | jq
+curl -G -X GET "${SOKRATES_DATAMGMT_URL}/data/catalog" \
+ --data-urlencode "providerUrl=${PLATO_IDS_URL}/api/v1/ids/data" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ -s | jq
```
## 3. Negotiate Contract
@@ -112,11 +167,40 @@ and checking whether the `contractAgreementId` is set. This might take a few sec
**Run**
```bash
-export NEGOTIATION_ID=$(curl -X POST "$SOKRATES_DATAMGMT_URL/data/contractnegotiations" --header "X-Api-Key: password" --header "Content-Type: application/json" --data "{ \"connectorId\": \"foo\", \"connectorAddress\": \"$PLATO_IDS_URL/api/v1/ids/data\", \"offer\": { \"offerId\": \"1:foo\", \"assetId\": \"1\", \"policy\": { \"uid\": \"1\", \"prohibitions\": [], \"obligations\": [], \"permissions\": [ { \"edctype\": \"dataspaceconnector:permission\", \"action\": { \"type\": \"USE\" }, \"target\": \"1\", \"constraints\": [] } ] } } }" -s | jq -r '.id')
+export NEGOTIATION_ID=$( \
+ curl -X POST "${SOKRATES_DATAMGMT_URL}/data/contractnegotiations" \
+ --header "X-Api-Key: password" \
+ --header "Content-Type: application/json" \
+ --data "{
+ \"connectorId\": \"foo\",
+ \"connectorAddress\": \"${PLATO_IDS_URL}/api/v1/ids/data\",
+ \"offer\": {
+ \"offerId\": \"1:foo\",
+ \"assetId\": \"1\",
+ \"policy\": {
+ \"uid\": \"1\",
+ \"prohibitions\": [],
+ \"obligations\": [],
+ \"permissions\": [
+ {
+ \"edctype\": \"dataspaceconnector:permission\",
+ \"action\": { \"type\": \"USE\" },
+ \"target\": \"1\",
+ \"constraints\": []
+ }
+ ]
+ }
+ }
+ }" \
+ -s | jq -r '.id')
```
+
```bash
-curl -X GET "$SOKRATES_DATAMGMT_URL/data/contractnegotiations/$NEGOTIATION_ID" --header "X-Api-Key: password" --header "Content-Type: application/json" -s | jq
+curl -X GET "${SOKRATES_DATAMGMT_URL}/data/contractnegotiations/${NEGOTIATION_ID}" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ -s | jq
```
## 4. Transfer Data
@@ -129,16 +213,36 @@ the transfer process is `COMPLETED`.
**Run**
```bash
-export CONTRACT_AGREEMENT_ID=$(curl -X GET "$SOKRATES_DATAMGMT_URL/data/contractnegotiations/$NEGOTIATION_ID" --header "X-Api-Key: password" --header "Content-Type: application/json" -s | jq -r '.contractAgreementId')
+export CONTRACT_AGREEMENT_ID=$( \
+ curl -X GET "$SOKRATES_DATAMGMT_URL/data/contractnegotiations/$NEGOTIATION_ID" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ -s | jq -r '.contractAgreementId')
```
```bash
export TRANSFER_PROCESS_ID=$(tr -dc '[:alnum:]' < /dev/urandom | head -c20)
-export TRANSFER_ID=$(curl -X POST "$SOKRATES_DATAMGMT_URL/data/transferprocess" --header "X-Api-Key: password" --header "Content-Type: application/json" --data "{ \"id\": \"${TRANSFER_PROCESS_ID}\", \"connectorId\": \"foo\", \"connectorAddress\": \"${PLATO_IDS_URL}/api/v1/ids/data\", \"contractId\": \"${CONTRACT_AGREEMENT_ID}\", \"assetId\": \"1\", \"managedResources\": \"false\", \"dataDestination\": { \"type\": \"HttpProxy\" } }" -s | jq -r '.id')
+export TRANSFER_ID=$( \
+ curl -X POST "${SOKRATES_DATAMGMT_URL}/data/transferprocess" \
+ --header "X-Api-Key: password" \
+ --header "Content-Type: application/json" \
+ --data "{
+ \"id\": \"${TRANSFER_PROCESS_ID}\",
+ \"connectorId\": \"foo\",
+ \"connectorAddress\": \"${PLATO_IDS_URL}/api/v1/ids/data\",
+ \"contractId\": \"${CONTRACT_AGREEMENT_ID}\",
+ \"assetId\": \"1\",
+ \"managedResources\": \"false\",
+ \"dataDestination\": { \"type\": \"HttpProxy\" }
+ }" \
+ -s | jq -r '.id')
```
```bash
-curl -X GET "$SOKRATES_DATAMGMT_URL/data/transferprocess/$TRANSFER_ID" --header "X-Api-Key: password" --header "Content-Type: application/json" -s | jq
+curl -X GET "$SOKRATES_DATAMGMT_URL/data/transferprocess/$TRANSFER_ID" \
+ --header 'X-Api-Key: password' \
+ --header 'Content-Type: application/json' \
+ -s | jq
```
## 5. Verify Data Transfer
@@ -149,7 +253,9 @@ locally. In this demo the transfer can be verified by executing a simple `cat` c
![Sequence 1](diagrams/transfer_sequence_5.png)
```bash
-curl -X GET "${SOKRATES_BACKEND_URL}/${TRANSFER_PROCESS_ID}" -H "Accept: application/octet-stream" -s | jq
+curl -X GET "${SOKRATES_BACKEND_URL}/${TRANSFER_PROCESS_ID}" \
+ --header 'Accept: application/octet-stream' \
+ -s | jq
```
# Delete All Data
diff --git a/docs/development/Release.md b/docs/development/Release.md
new file mode 100644
index 000000000..2b8e09d07
--- /dev/null
+++ b/docs/development/Release.md
@@ -0,0 +1,40 @@
+# Release
+
+## Prerequisites
+
+[![Apache Maven][maven-shield]][maven-url]
+
+## Update DEPENDENCIES file
+### 1. Setup Eclipse Dash License Tool Maven Plugin locally
+
+At the time of writing the maven plugin could not be downloaded from the repository.
+As alternative check out the repository and build the plugin locally, so that its added to the local maven repository.
+
+#### 1.1 Checkout repository
+
+`git clone https://github.com/eclipse/dash-licenses.git`
+
+#### 1.2 Install Plugin in local maven repository
+
+`mvn clean install`
+
+### 2. Generate DEPENDENCIES file
+
+This call generates the dependencies file. If there is a value set for `dash.iplab.token` it will also automatically create new issues for all unknown dependencies at the Eclipse Intellectual Property board
+https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues
+
+```bash
+./mvnw org.eclipse.dash:license-tool-plugin:license-check \
+ -Ddash.summary=DEPENDENCIES \
+ -Ddash.projectId=automotive.tractusx \
+ -Ddash.iplab.token=
+```
+
+
+
+ * see dash documentation on how to get a token
+
+
+
+[maven-shield]: https://img.shields.io/badge/Apache%20Maven-URL-blue
+[maven-url]: https://maven.apache.org
\ No newline at end of file
diff --git a/docs/migration/Version_0.1.0_0.1.1.md b/docs/migration/Version_0.1.0_0.1.1.md
index e0caa4fa2..5797593de 100644
--- a/docs/migration/Version_0.1.0_0.1.1.md
+++ b/docs/migration/Version_0.1.0_0.1.1.md
@@ -75,7 +75,7 @@ New call
## 2. Connector Configuration
### 2.1. CX OAuth Extension
-All connectors are now shipped with a new OAuth extension. This extension has an additional mandatory setting called `edc.oauth.endpoint.audience`, that must be set to the IDS path.
+All connectors are now shipped with a new OAuth extension. This extension has an additional mandatory setting called `edc.ids.endpoint.audience`, that must be set to the IDS path.
[Documentation](/edc-extensions/cx-oauth2/README.md)
@@ -85,7 +85,7 @@ All connectors are now shipped with a new OAuth extension. This extension has an
Example
```
-edc.oauth.endpoint.audience=http://plato-edc-controlplane:8282/api/v1/ids/data
+edc.ids.endpoint.audience=http://plato-edc-controlplane:8282/api/v1/ids/data
```
diff --git a/docs/release-notes/Version 0.1.1.md b/docs/release-notes/Version 0.1.1.md
index 3e5247942..a56d1f307 100644
--- a/docs/release-notes/Version 0.1.1.md
+++ b/docs/release-notes/Version 0.1.1.md
@@ -6,6 +6,10 @@
>
> Please consolidate the migration documentation ([link](../migration/Version_0.1.0_0.1.1.md)).
+> **Important Notice**
+>
+> The **InMemoryControlPlane** image is broken. Please use another control plane instead.
+
## 0. Summary
- 1. Eclipse Dataspace Connector Update
@@ -33,7 +37,7 @@ Using the open source OAuth Extension it is possible for a connector to re-use a
**New Audience Configuration**
```
-edc.oauth.endpoint.audience=http://plato-edc-controlplane:8282/api/v1/ids/data
+edc.ids.endpoint.audience=http://plato-edc-controlplane:8282/api/v1/ids/data
```
## 3. Bug Fixes
diff --git a/docs/release-notes/Version 0.1.2.md b/docs/release-notes/Version 0.1.2.md
new file mode 100644
index 000000000..812e8a1d7
--- /dev/null
+++ b/docs/release-notes/Version 0.1.2.md
@@ -0,0 +1,20 @@
+# Release Notes Version 0.1.2
+30.09.2022
+
+> This version introduced mostly bugfixes and thread mitigation by updating libraries.
+
+## 1. Eclipse Dataspace Connector
+
+The Git submodule references commit `740c100ac162bc41b1968c232ad81f7d739aefa9` from the 23th of September 2022 (newer than **0.0.1-milestone-6**).
+
+## 2. Product EDC
+
+### 2.1 Alpine Image
+
+Introduce alpine image as base for all Product EDC Images (replaced distroless image).
+
+## 3. Fixed Issues
+
+- Contract negotiation not working when initiated with policy id ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1251))
+
+- Negotiation of Policies with extensible properties now works as expected
\ No newline at end of file
diff --git a/edc b/edc
index 658c5e31a..740c100ac 160000
--- a/edc
+++ b/edc
@@ -1 +1 @@
-Subproject commit 658c5e31accf5f7f4b221e94478763fd30af7d85
+Subproject commit 740c100ac162bc41b1968c232ad81f7d739aefa9
diff --git a/edc-controlplane/README.md b/edc-controlplane/README.md
index 230e156d8..033852b1c 100644
--- a/edc-controlplane/README.md
+++ b/edc-controlplane/README.md
@@ -44,9 +44,19 @@ EDC commit the Product-EDC uses.
**Persistence**
- ContractDefinition-AssetSelector of InMemory Connector selects 50 Asset max.([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1779))
+**Negotiation**
+
+- Connector blocks negotiation when `rightExpression` of a `Constraint` contains multiple elements/an array ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/2026))
+
+- Provider must pass its own `ContractPolicy` for the negotiation to succeed ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1975))
+
**Transfer**
- Transfer Process remains 'InProgress' on provider side ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1287))
+**Data Management API**
+
+- Pagination is not correctly applied during catalog request ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/2008))
+
**Configuration**
- Contract negotiation not working when `web.http.ids.path` is configured/changed ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1249))
- **Workaround:** Don't configure `web.http.ids.path`, so that the default path is used.
@@ -56,10 +66,6 @@ EDC commit the Product-EDC uses.
- Non-telling logs when `edc.transfer.proxy.token.verifier.publickey.alias` setting is missing([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1889))
-**Data Management API**
-- Contract negotiation not working when initiated with policy id ([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1251))
- - **Workaround:** The DataManagement API can also initiate a contract negotiation using the actual policy object.
-
**Other**
- Non-IDS-Transformable-ContractDefinition causes connector to be unable to send out self-descriptions/catalogs([issue](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/issues/1265))
- **Workaround:** Delete non-transformable ContractDefinition or Policy.
diff --git a/edc-controlplane/edc-controlplane-base/pom.xml b/edc-controlplane/edc-controlplane-base/pom.xml
index 7aca2a18a..61b811404 100644
--- a/edc-controlplane/edc-controlplane-base/pom.xml
+++ b/edc-controlplane/edc-controlplane-base/pom.xml
@@ -18,7 +18,7 @@
edc-controlplane
net.catenax.edc
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-controlplane/edc-controlplane-memory/pom.xml b/edc-controlplane/edc-controlplane-memory/pom.xml
index 43334f0a2..7bfadee32 100644
--- a/edc-controlplane/edc-controlplane-memory/pom.xml
+++ b/edc-controlplane/edc-controlplane-memory/pom.xml
@@ -16,7 +16,7 @@
net.catenax.edc
edc-controlplane
- 0.1.1
+ 0.1.2
4.0.0
@@ -87,6 +87,10 @@
net.catenax.edc
edc-controlplane-base
+
+ org.eclipse.dataspaceconnector
+ control-plane-core
+
diff --git a/edc-controlplane/edc-controlplane-memory/src/main/docker/Dockerfile b/edc-controlplane/edc-controlplane-memory/src/main/docker/Dockerfile
index 350eeb6c5..aec27cd97 100644
--- a/edc-controlplane/edc-controlplane-memory/src/main/docker/Dockerfile
+++ b/edc-controlplane/edc-controlplane-memory/src/main/docker/Dockerfile
@@ -16,17 +16,38 @@ ENV OTEL_AGENT_LOCATION "https://github.com/open-telemetry/opentelemetry-java-in
RUN wget ${OTEL_AGENT_LOCATION} -O /tmp/opentelemetry-javaagent.jar
-FROM gcr.io/distroless/java11-debian11@sha256:dee9240c64471f1776a6b37f315890aba14ff4bc89ad247eeb34ec79fdeb24f4
+FROM alpine:3.16.2
+
ARG JAR
ARG LIB
+ARG APP_USER=docker
+ARG APP_UID=10100
+
+RUN apk update && \
+ apk add openjdk11-jre-headless=11.0.16.1_p1-r0 --no-cache && \
+ rm -rf /var/cache/apk/*
+
+RUN addgroup --system "$APP_USER"
+
+RUN adduser \
+ --shell /sbin/nologin \
+ --disabled-password \
+ --gecos "" \
+ --ingroup "$APP_USER" \
+ --no-create-home \
+ --uid "$APP_UID" \
+ "$APP_USER"
+
+USER "$APP_USER"
WORKDIR /app
COPY --from=otel /tmp/opentelemetry-javaagent.jar .
COPY ${JAR} edc-controlplane.jar
COPY ${LIB} ./lib/
-CMD ["-javaagent:/app/opentelemetry-javaagent.jar", \
+CMD ["java", \
+ "-javaagent:/app/opentelemetry-javaagent.jar", \
"-Dedc.fs.config=/app/configuration.properties", \
"-Djava.util.logging.config.file=/app/logging.properties", \
"-Dotel.javaagent.configuration-file=/app/opentelemetry.properties", \
diff --git a/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/pom.xml b/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/pom.xml
index 0aa9f47e3..402a1bac2 100644
--- a/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/pom.xml
+++ b/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
edc-controlplane
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/src/main/docker/Dockerfile b/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/src/main/docker/Dockerfile
index 350eeb6c5..aec27cd97 100644
--- a/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/src/main/docker/Dockerfile
+++ b/edc-controlplane/edc-controlplane-postgresql-hashicorp-vault/src/main/docker/Dockerfile
@@ -16,17 +16,38 @@ ENV OTEL_AGENT_LOCATION "https://github.com/open-telemetry/opentelemetry-java-in
RUN wget ${OTEL_AGENT_LOCATION} -O /tmp/opentelemetry-javaagent.jar
-FROM gcr.io/distroless/java11-debian11@sha256:dee9240c64471f1776a6b37f315890aba14ff4bc89ad247eeb34ec79fdeb24f4
+FROM alpine:3.16.2
+
ARG JAR
ARG LIB
+ARG APP_USER=docker
+ARG APP_UID=10100
+
+RUN apk update && \
+ apk add openjdk11-jre-headless=11.0.16.1_p1-r0 --no-cache && \
+ rm -rf /var/cache/apk/*
+
+RUN addgroup --system "$APP_USER"
+
+RUN adduser \
+ --shell /sbin/nologin \
+ --disabled-password \
+ --gecos "" \
+ --ingroup "$APP_USER" \
+ --no-create-home \
+ --uid "$APP_UID" \
+ "$APP_USER"
+
+USER "$APP_USER"
WORKDIR /app
COPY --from=otel /tmp/opentelemetry-javaagent.jar .
COPY ${JAR} edc-controlplane.jar
COPY ${LIB} ./lib/
-CMD ["-javaagent:/app/opentelemetry-javaagent.jar", \
+CMD ["java", \
+ "-javaagent:/app/opentelemetry-javaagent.jar", \
"-Dedc.fs.config=/app/configuration.properties", \
"-Djava.util.logging.config.file=/app/logging.properties", \
"-Dotel.javaagent.configuration-file=/app/opentelemetry.properties", \
diff --git a/edc-controlplane/edc-controlplane-postgresql/pom.xml b/edc-controlplane/edc-controlplane-postgresql/pom.xml
index c0c97462e..0ef3fa639 100644
--- a/edc-controlplane/edc-controlplane-postgresql/pom.xml
+++ b/edc-controlplane/edc-controlplane-postgresql/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
edc-controlplane
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-controlplane/edc-controlplane-postgresql/src/main/docker/Dockerfile b/edc-controlplane/edc-controlplane-postgresql/src/main/docker/Dockerfile
index 350eeb6c5..aec27cd97 100644
--- a/edc-controlplane/edc-controlplane-postgresql/src/main/docker/Dockerfile
+++ b/edc-controlplane/edc-controlplane-postgresql/src/main/docker/Dockerfile
@@ -16,17 +16,38 @@ ENV OTEL_AGENT_LOCATION "https://github.com/open-telemetry/opentelemetry-java-in
RUN wget ${OTEL_AGENT_LOCATION} -O /tmp/opentelemetry-javaagent.jar
-FROM gcr.io/distroless/java11-debian11@sha256:dee9240c64471f1776a6b37f315890aba14ff4bc89ad247eeb34ec79fdeb24f4
+FROM alpine:3.16.2
+
ARG JAR
ARG LIB
+ARG APP_USER=docker
+ARG APP_UID=10100
+
+RUN apk update && \
+ apk add openjdk11-jre-headless=11.0.16.1_p1-r0 --no-cache && \
+ rm -rf /var/cache/apk/*
+
+RUN addgroup --system "$APP_USER"
+
+RUN adduser \
+ --shell /sbin/nologin \
+ --disabled-password \
+ --gecos "" \
+ --ingroup "$APP_USER" \
+ --no-create-home \
+ --uid "$APP_UID" \
+ "$APP_USER"
+
+USER "$APP_USER"
WORKDIR /app
COPY --from=otel /tmp/opentelemetry-javaagent.jar .
COPY ${JAR} edc-controlplane.jar
COPY ${LIB} ./lib/
-CMD ["-javaagent:/app/opentelemetry-javaagent.jar", \
+CMD ["java", \
+ "-javaagent:/app/opentelemetry-javaagent.jar", \
"-Dedc.fs.config=/app/configuration.properties", \
"-Djava.util.logging.config.file=/app/logging.properties", \
"-Dotel.javaagent.configuration-file=/app/opentelemetry.properties", \
diff --git a/edc-controlplane/pom.xml b/edc-controlplane/pom.xml
index 1414a5d93..7833a1b49 100644
--- a/edc-controlplane/pom.xml
+++ b/edc-controlplane/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
product-edc-parent
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-dataplane/edc-dataplane-azure-vault/pom.xml b/edc-dataplane/edc-dataplane-azure-vault/pom.xml
index 5420c8a78..82c0895d5 100644
--- a/edc-dataplane/edc-dataplane-azure-vault/pom.xml
+++ b/edc-dataplane/edc-dataplane-azure-vault/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
edc-dataplane
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-dataplane/edc-dataplane-azure-vault/src/main/docker/Dockerfile b/edc-dataplane/edc-dataplane-azure-vault/src/main/docker/Dockerfile
index 4b527f281..2aec25e1b 100644
--- a/edc-dataplane/edc-dataplane-azure-vault/src/main/docker/Dockerfile
+++ b/edc-dataplane/edc-dataplane-azure-vault/src/main/docker/Dockerfile
@@ -16,17 +16,38 @@ ENV OTEL_AGENT_LOCATION "https://github.com/open-telemetry/opentelemetry-java-in
RUN wget ${OTEL_AGENT_LOCATION} -O /tmp/opentelemetry-javaagent.jar
-FROM gcr.io/distroless/java11-debian11@sha256:dee9240c64471f1776a6b37f315890aba14ff4bc89ad247eeb34ec79fdeb24f4
+FROM alpine:3.16.2
+
ARG JAR
ARG LIB
+ARG APP_USER=docker
+ARG APP_UID=10100
+
+RUN apk update && \
+ apk add openjdk11-jre-headless=11.0.16.1_p1-r0 --no-cache && \
+ rm -rf /var/cache/apk/*
+
+RUN addgroup --system "$APP_USER"
+
+RUN adduser \
+ --shell /sbin/nologin \
+ --disabled-password \
+ --gecos "" \
+ --ingroup "$APP_USER" \
+ --no-create-home \
+ --uid "$APP_UID" \
+ "$APP_USER"
+
+USER "$APP_USER"
WORKDIR /app
COPY --from=otel /tmp/opentelemetry-javaagent.jar .
COPY ${JAR} edc-dataplane.jar
COPY ${LIB} ./lib/
-CMD ["-javaagent:/app/opentelemetry-javaagent.jar", \
+CMD ["java", \
+ "-javaagent:/app/opentelemetry-javaagent.jar", \
"-Dedc.fs.config=/app/configuration.properties", \
"-Djava.util.logging.config.file=/app/logging.properties", \
"-Dotel.javaagent.configuration-file=/app/opentelemetry.properties", \
diff --git a/edc-dataplane/edc-dataplane-base/pom.xml b/edc-dataplane/edc-dataplane-base/pom.xml
index 6905ca3ba..4d3604e17 100644
--- a/edc-dataplane/edc-dataplane-base/pom.xml
+++ b/edc-dataplane/edc-dataplane-base/pom.xml
@@ -18,7 +18,7 @@
edc-dataplane
net.catenax.edc
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-dataplane/edc-dataplane-hashicorp-vault/pom.xml b/edc-dataplane/edc-dataplane-hashicorp-vault/pom.xml
index 351b705a5..25ab47e0d 100644
--- a/edc-dataplane/edc-dataplane-hashicorp-vault/pom.xml
+++ b/edc-dataplane/edc-dataplane-hashicorp-vault/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
edc-dataplane
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-dataplane/edc-dataplane-hashicorp-vault/src/main/docker/Dockerfile b/edc-dataplane/edc-dataplane-hashicorp-vault/src/main/docker/Dockerfile
index 4b527f281..2aec25e1b 100644
--- a/edc-dataplane/edc-dataplane-hashicorp-vault/src/main/docker/Dockerfile
+++ b/edc-dataplane/edc-dataplane-hashicorp-vault/src/main/docker/Dockerfile
@@ -16,17 +16,38 @@ ENV OTEL_AGENT_LOCATION "https://github.com/open-telemetry/opentelemetry-java-in
RUN wget ${OTEL_AGENT_LOCATION} -O /tmp/opentelemetry-javaagent.jar
-FROM gcr.io/distroless/java11-debian11@sha256:dee9240c64471f1776a6b37f315890aba14ff4bc89ad247eeb34ec79fdeb24f4
+FROM alpine:3.16.2
+
ARG JAR
ARG LIB
+ARG APP_USER=docker
+ARG APP_UID=10100
+
+RUN apk update && \
+ apk add openjdk11-jre-headless=11.0.16.1_p1-r0 --no-cache && \
+ rm -rf /var/cache/apk/*
+
+RUN addgroup --system "$APP_USER"
+
+RUN adduser \
+ --shell /sbin/nologin \
+ --disabled-password \
+ --gecos "" \
+ --ingroup "$APP_USER" \
+ --no-create-home \
+ --uid "$APP_UID" \
+ "$APP_USER"
+
+USER "$APP_USER"
WORKDIR /app
COPY --from=otel /tmp/opentelemetry-javaagent.jar .
COPY ${JAR} edc-dataplane.jar
COPY ${LIB} ./lib/
-CMD ["-javaagent:/app/opentelemetry-javaagent.jar", \
+CMD ["java", \
+ "-javaagent:/app/opentelemetry-javaagent.jar", \
"-Dedc.fs.config=/app/configuration.properties", \
"-Djava.util.logging.config.file=/app/logging.properties", \
"-Dotel.javaagent.configuration-file=/app/opentelemetry.properties", \
diff --git a/edc-dataplane/pom.xml b/edc-dataplane/pom.xml
index 2b7e8fd52..70d806d1b 100644
--- a/edc-dataplane/pom.xml
+++ b/edc-dataplane/pom.xml
@@ -18,7 +18,7 @@
net.catenax.edc
product-edc-parent
- 0.1.1
+ 0.1.2
edc-dataplane
diff --git a/edc-extensions/business-partner-validation/pom.xml b/edc-extensions/business-partner-validation/pom.xml
index 2523e9bc3..fbfe5ba0e 100644
--- a/edc-extensions/business-partner-validation/pom.xml
+++ b/edc-extensions/business-partner-validation/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc.extensions
edc-extensions
- 0.1.1
+ 0.1.2
4.0.0
@@ -49,10 +49,18 @@
+
+ org.eclipse.dataspaceconnector
+ core-spi
+
org.eclipse.dataspaceconnector
policy-spi
+
+ org.eclipse.dataspaceconnector
+ policy-engine-spi
+
diff --git a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtension.java b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtension.java
index 88caf2121..d97953e84 100644
--- a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtension.java
+++ b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtension.java
@@ -14,7 +14,7 @@
package net.catenax.edc.validation.businesspartner;
-import static org.eclipse.dataspaceconnector.spi.policy.PolicyEngine.ALL_SCOPES;
+import static org.eclipse.dataspaceconnector.spi.policy.engine.PolicyEngine.ALL_SCOPES;
import net.catenax.edc.validation.businesspartner.functions.BusinessPartnerDutyFunction;
import net.catenax.edc.validation.businesspartner.functions.BusinessPartnerPermissionFunction;
@@ -22,10 +22,10 @@
import org.eclipse.dataspaceconnector.policy.model.Duty;
import org.eclipse.dataspaceconnector.policy.model.Permission;
import org.eclipse.dataspaceconnector.policy.model.Prohibition;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyEngine;
-import org.eclipse.dataspaceconnector.spi.policy.RuleBindingRegistry;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyEngine;
+import org.eclipse.dataspaceconnector.spi.policy.engine.RuleBindingRegistry;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidation.java b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidation.java
index 47466b2d6..e5f4eabe0 100644
--- a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidation.java
+++ b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidation.java
@@ -20,7 +20,7 @@
import org.eclipse.dataspaceconnector.policy.model.Operator;
import org.eclipse.dataspaceconnector.spi.agent.ParticipantAgent;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyContext;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyContext;
/**
* Abstract class for BusinessPartnerNumber validation. This class may be inherited from the EDC
diff --git a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerDutyFunction.java b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerDutyFunction.java
index dcf0c5050..db7a7282b 100644
--- a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerDutyFunction.java
+++ b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerDutyFunction.java
@@ -17,8 +17,8 @@
import org.eclipse.dataspaceconnector.policy.model.Duty;
import org.eclipse.dataspaceconnector.policy.model.Operator;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.AtomicConstraintFunction;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyContext;
+import org.eclipse.dataspaceconnector.spi.policy.engine.AtomicConstraintFunction;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyContext;
/** AtomicConstraintFunction to validate business partner numbers for edc duties. */
public class BusinessPartnerDutyFunction extends AbstractBusinessPartnerValidation
diff --git a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerPermissionFunction.java b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerPermissionFunction.java
index a12544248..101f37054 100644
--- a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerPermissionFunction.java
+++ b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerPermissionFunction.java
@@ -17,8 +17,8 @@
import org.eclipse.dataspaceconnector.policy.model.Operator;
import org.eclipse.dataspaceconnector.policy.model.Permission;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.AtomicConstraintFunction;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyContext;
+import org.eclipse.dataspaceconnector.spi.policy.engine.AtomicConstraintFunction;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyContext;
/** AtomicConstraintFunction to validate business partner numbers for edc permissions. */
public class BusinessPartnerPermissionFunction extends AbstractBusinessPartnerValidation
diff --git a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerProhibitionFunction.java b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerProhibitionFunction.java
index faeb4a358..4db6d9629 100644
--- a/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerProhibitionFunction.java
+++ b/edc-extensions/business-partner-validation/src/main/java/net/catenax/edc/validation/businesspartner/functions/BusinessPartnerProhibitionFunction.java
@@ -17,8 +17,8 @@
import org.eclipse.dataspaceconnector.policy.model.Operator;
import org.eclipse.dataspaceconnector.policy.model.Prohibition;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.AtomicConstraintFunction;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyContext;
+import org.eclipse.dataspaceconnector.spi.policy.engine.AtomicConstraintFunction;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyContext;
/** AtomicConstraintFunction to validate business partner numbers for edc prohibitions. */
public class BusinessPartnerProhibitionFunction extends AbstractBusinessPartnerValidation
diff --git a/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtensionTest.java b/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtensionTest.java
index 79dd839d8..4ae06eb83 100644
--- a/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtensionTest.java
+++ b/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/BusinessPartnerValidationExtensionTest.java
@@ -18,8 +18,8 @@
import org.eclipse.dataspaceconnector.policy.model.Permission;
import org.eclipse.dataspaceconnector.policy.model.Prohibition;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyEngine;
-import org.eclipse.dataspaceconnector.spi.policy.RuleBindingRegistry;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyEngine;
+import org.eclipse.dataspaceconnector.spi.policy.engine.RuleBindingRegistry;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidationTest.java b/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidationTest.java
index ac8a68ebb..b00232d5e 100644
--- a/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidationTest.java
+++ b/edc-extensions/business-partner-validation/src/test/java/net/catenax/edc/validation/businesspartner/functions/AbstractBusinessPartnerValidationTest.java
@@ -19,7 +19,7 @@
import org.eclipse.dataspaceconnector.policy.model.Operator;
import org.eclipse.dataspaceconnector.spi.agent.ParticipantAgent;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.policy.PolicyContext;
+import org.eclipse.dataspaceconnector.spi.policy.engine.PolicyContext;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/edc-extensions/cx-oauth2/README.md b/edc-extensions/cx-oauth2/README.md
index 5f721e4ea..0da6f1ced 100644
--- a/edc-extensions/cx-oauth2/README.md
+++ b/edc-extensions/cx-oauth2/README.md
@@ -22,4 +22,12 @@ The reason IDS did this is to prevent the IDS DAPS to know, which connectors tal
| edc.oauth.validation.nbf.leeway | DAPS token request leeway | | 10 seconds |
| edc.oauth.provider.jwks.refresh | Time between refresh of the DAPS json web key set | | 5 minutes |
| edc.ids.endpoint.audience | The audience the connector requests from the DAPS. Should be the IDS URL of the connector, e.g. `http://plato-edc-controlplane:8282/api/v1/ids/data` | X | |
-| edc.ids.validation.referringconnector | Adds checks to the DAPS token. Validation that the `referringConnector` equals the `issuerConnector` and the `securityProfile` of the token is equal to the profile of the IDS message | | false |
\ No newline at end of file
+| edc.ids.validation.referringconnector | Adds checks to the DAPS token. Validation that the `referringConnector` equals the `issuerConnector` and the `securityProfile` of the token is equal to the profile of the IDS message | | false |
+
+## Audience Validation
+
+Instead of the `idsc:IDS_CONNECTORS_ALL` the connector requests a specific audience from the DAPS. This audience will be the IDS URL, the connector intends to call.
+
+When a connector receives a message, it will checks the token audience is equal to the configured value in `edc.ids.endpoint.audience`.
+
+![sequence diagram](./diagrams/sequence.png)
\ No newline at end of file
diff --git a/edc-extensions/cx-oauth2/diagrams/sequence.png b/edc-extensions/cx-oauth2/diagrams/sequence.png
new file mode 100644
index 000000000..784441b4e
Binary files /dev/null and b/edc-extensions/cx-oauth2/diagrams/sequence.png differ
diff --git a/edc-extensions/cx-oauth2/diagrams/sequence.puml b/edc-extensions/cx-oauth2/diagrams/sequence.puml
new file mode 100644
index 000000000..d2f20f278
--- /dev/null
+++ b/edc-extensions/cx-oauth2/diagrams/sequence.puml
@@ -0,0 +1,24 @@
+@startuml
+
+title CX-DAPS Audience Validation
+
+participant ConnectorA as "Connector A"
+participant DAPS as "IDS DAPS"
+participant ConnectorB as "Connector B"
+
+== Configuration ==
+
+ConnectorB <-? : Configure //edc.ids.endpoint.audience//\nto ///api/v1/ids/data//
+
+== Request ==
+
+?-> ConnectorA ++: Initiate Catalog Request\n/data/catalog?providerUrl=///api/v1/ids/data//
+ ConnectorA -> DAPS ++: Request Token for audience\n///api/v1/ids/data//
+ return DAPS Token
+ ConnectorA -> ConnectorB ++ : Send Request with Token
+ ConnectorB -> ConnectorB : Check Audience equals\n/api/v1/ids/data
+ ... continue request processing ...
+ return Catalog Response
+return Catalog
+
+@enduml
\ No newline at end of file
diff --git a/edc-extensions/cx-oauth2/pom.xml b/edc-extensions/cx-oauth2/pom.xml
index b6b56ca5a..b82d0b05f 100644
--- a/edc-extensions/cx-oauth2/pom.xml
+++ b/edc-extensions/cx-oauth2/pom.xml
@@ -18,7 +18,7 @@
edc-extensions
net.catenax.edc.extensions
- 0.1.1
+ 0.1.2
4.0.0
@@ -122,7 +122,6 @@
com.nimbusds
nimbus-jose-jwt
- 8.23
com.squareup.okhttp3
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/OAuth2Extension.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/OAuth2Extension.java
index abc008b95..9fe15001c 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/OAuth2Extension.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/OAuth2Extension.java
@@ -18,14 +18,14 @@
import lombok.Setter;
import okhttp3.OkHttpClient;
import org.eclipse.dataspaceconnector.iam.oauth2.spi.Oauth2JwtDecoratorRegistry;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Inject;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.EdcException;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
import org.eclipse.dataspaceconnector.spi.iam.IdentityService;
import org.eclipse.dataspaceconnector.spi.jwt.TokenGenerationService;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationService;
-import org.eclipse.dataspaceconnector.spi.system.Inject;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecorator.java
index 3469dd075..3e7f90950 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecorator.java
@@ -14,15 +14,22 @@
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.Map;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
public class DapsJwtDecorator implements JwtDecorator {
+
+ @Override
+ public Map claims() {
+ return Map.of(
+ "@context",
+ "https://w3id.org/idsa/contexts/context.jsonld",
+ "@type",
+ "ids:DatRequestToken");
+ }
+
@Override
- public void decorate(JWSHeader.Builder header, JWTClaimsSet.Builder claimsSet) {
- claimsSet
- .claim("@context", "https://w3id.org/idsa/contexts/context.jsonld")
- .claim("@type", "ids:DatRequestToken");
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecorator.java
index 4c06d1aea..4168f7e63 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecorator.java
@@ -13,11 +13,10 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.time.Clock;
import java.time.Duration;
import java.util.Date;
+import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
@@ -29,7 +28,14 @@ public class ExpJwtDecorator implements JwtDecorator {
@NonNull private final Duration expiration;
@Override
- public void decorate(final JWSHeader.Builder header, final JWTClaimsSet.Builder claimsSet) {
- claimsSet.expirationTime(Date.from(clock.instant().plusSeconds(expiration.toSeconds())));
+ public Map claims() {
+ return Map.of(
+ JWTClaimNames.EXPIRATION_TIME,
+ Date.from(clock.instant().plusSeconds(expiration.toSeconds())));
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecorator.java
index c409ca74f..d8d34d7bb 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecorator.java
@@ -13,10 +13,9 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.time.Clock;
import java.util.Date;
+import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
@@ -27,7 +26,12 @@ public class IatJwtDecorator implements JwtDecorator {
@NonNull private final Clock clock;
@Override
- public void decorate(final JWSHeader.Builder header, final JWTClaimsSet.Builder claimsSet) {
- claimsSet.issueTime(Date.from(clock.instant()));
+ public Map claims() {
+ return Map.of(JWTClaimNames.ISSUED_AT, Date.from(clock.instant()));
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecorator.java
index df9c71a22..673ca7372 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecorator.java
@@ -13,8 +13,8 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.Collections;
+import java.util.Map;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
@@ -22,7 +22,12 @@
public class IdsAudJwtDecorator implements JwtDecorator {
@Override
- public void decorate(final JWSHeader.Builder header, final JWTClaimsSet.Builder claimsSet) {
- claimsSet.audience("idsc:IDS_CONNECTORS_ALL");
+ public Map claims() {
+ return Map.of(JWTClaimNames.AUDIENCE, Collections.singletonList("idsc:IDS_CONNECTORS_ALL"));
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecorator.java
index 54daf908e..32303d14a 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecorator.java
@@ -13,8 +13,7 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
@@ -25,7 +24,12 @@ public class IssJwtDecorator implements JwtDecorator {
@NonNull private final String clientId;
@Override
- public void decorate(final JWSHeader.Builder header, final JWTClaimsSet.Builder claimsSet) {
- claimsSet.issuer(clientId);
+ public Map claims() {
+ return Map.of(JWTClaimNames.ISSUER, clientId);
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JWTClaimNames.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JWTClaimNames.java
new file mode 100644
index 000000000..f1649b8c0
--- /dev/null
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JWTClaimNames.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2022 Mercedes-Benz Tech Innovation GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Apache License, Version 2.0 which is available at
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Contributors:
+ * Mercedes-Benz Tech Innovation GmbH - Initial API and Implementation
+ *
+ */
+package net.catenax.edc.oauth2.jwt.decorator;
+
+public final class JWTClaimNames {
+ public static final String ISSUER = "iss";
+ public static final String SUBJECT = "sub";
+ public static final String AUDIENCE = "aud";
+ public static final String EXPIRATION_TIME = "exp";
+ public static final String NOT_BEFORE = "nbf";
+ public static final String ISSUED_AT = "iat";
+ public static final String JWT_ID = "jti";
+}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecorator.java
index 6815a4ad5..39590d1a6 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecorator.java
@@ -13,17 +13,19 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.Map;
import java.util.UUID;
-import lombok.NonNull;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
public class JtiJwtDecorator implements JwtDecorator {
@Override
- public void decorate(
- @NonNull final JWSHeader.Builder header, @NonNull final JWTClaimsSet.Builder claimsSet) {
- claimsSet.jwtID(UUID.randomUUID().toString());
+ public Map claims() {
+ return Map.of(JWTClaimNames.JWT_ID, UUID.randomUUID().toString());
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JwtDecoratorExtension.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JwtDecoratorExtension.java
index fdff18d80..7f551fcc4 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JwtDecoratorExtension.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/JwtDecoratorExtension.java
@@ -21,12 +21,12 @@
import lombok.NonNull;
import lombok.Setter;
import org.eclipse.dataspaceconnector.iam.oauth2.spi.Oauth2JwtDecoratorRegistry;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Inject;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.EdcException;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
import org.eclipse.dataspaceconnector.spi.security.CertificateResolver;
-import org.eclipse.dataspaceconnector.spi.system.Inject;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecorator.java
index d0a9b459c..951fd8791 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecorator.java
@@ -13,8 +13,7 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
@@ -24,7 +23,12 @@ public class SubJwtDecorator implements JwtDecorator {
@NonNull private final String subject;
@Override
- public void decorate(final JWSHeader.Builder header, final JWTClaimsSet.Builder claimsSet) {
- claimsSet.subject(subject);
+ public Map claims() {
+ return Map.of(JWTClaimNames.SUBJECT, subject);
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/X5tJwtDecorator.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/X5tJwtDecorator.java
index 9d34c0307..9b8903936 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/X5tJwtDecorator.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/decorator/X5tJwtDecorator.java
@@ -13,12 +13,11 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
import com.nimbusds.jose.util.Base64URL;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;
+import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import org.eclipse.dataspaceconnector.spi.EdcException;
@@ -30,12 +29,6 @@ public class X5tJwtDecorator implements JwtDecorator {
@NonNull private final byte[] encodedCertificate;
- @Override
- public void decorate(
- @NonNull final JWSHeader.Builder header, @NonNull final JWTClaimsSet.Builder claimsSet) {
- header.x509CertThumbprint(new Base64URL(sha1Base64Fingerprint(encodedCertificate)));
- }
-
public static String sha1Base64Fingerprint(final byte[] bytes) {
try {
final MessageDigest messageDigest = MessageDigest.getInstance(SHA_1);
@@ -45,4 +38,14 @@ public static String sha1Base64Fingerprint(final byte[] bytes) {
throw new EdcException(e);
}
}
+
+ @Override
+ public Map claims() {
+ return Map.of();
+ }
+
+ @Override
+ public Map headers() {
+ return Map.of("x5t", new Base64URL(sha1Base64Fingerprint(encodedCertificate)));
+ }
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationService.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationService.java
index e26e461ef..b4c4f3a27 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationService.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationService.java
@@ -26,7 +26,7 @@
import com.nimbusds.jwt.SignedJWT;
import java.security.PrivateKey;
import java.security.interfaces.ECPrivateKey;
-import java.util.Arrays;
+import java.util.Map.Entry;
import lombok.NonNull;
import lombok.SneakyThrows;
import org.eclipse.dataspaceconnector.spi.EdcException;
@@ -76,11 +76,16 @@ private static JWSAlgorithm getJWSAlgorithm(@NonNull final String algorithm) {
@Override
public Result generate(@NotNull @NonNull final JwtDecorator... decorators) {
+
final JWSHeader.Builder headerBuilder = new JWSHeader.Builder(jwsAlgorithm);
final JWTClaimsSet.Builder claimsBuilder = new JWTClaimsSet.Builder();
- Arrays.stream(decorators)
- .forEach(decorator -> decorator.decorate(headerBuilder, claimsBuilder));
+ for (JwtDecorator decorator : decorators) {
+ for (Entry claim : decorator.claims().entrySet()) {
+ claimsBuilder.claim(claim.getKey(), claim.getValue());
+ }
+ headerBuilder.customParams(decorator.headers());
+ }
final JWTClaimsSet jwtClaimSet = claimsBuilder.build();
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationServiceExtension.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationServiceExtension.java
index eb869ec32..0fcdf35f6 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationServiceExtension.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/generator/JwtTokenGenerationServiceExtension.java
@@ -16,12 +16,12 @@
import java.security.PrivateKey;
import lombok.NonNull;
import lombok.Setter;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Inject;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.jwt.TokenGenerationService;
import org.eclipse.dataspaceconnector.spi.security.PrivateKeyResolver;
-import org.eclipse.dataspaceconnector.spi.system.Inject;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/AudValidationRule.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/AudValidationRule.java
index 3d05e7f75..3f46930ff 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/AudValidationRule.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/AudValidationRule.java
@@ -13,19 +13,18 @@
*/
package net.catenax.edc.oauth2.jwt.validation;
-import com.nimbusds.jwt.JWTClaimsSet;
-import com.nimbusds.jwt.SignedJWT;
-import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
-import org.eclipse.dataspaceconnector.spi.EdcException;
+import net.catenax.edc.oauth2.jwt.decorator.JWTClaimNames;
+import org.eclipse.dataspaceconnector.spi.iam.ClaimToken;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationRule;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
import org.eclipse.dataspaceconnector.spi.result.Result;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@RequiredArgsConstructor
@@ -42,12 +41,15 @@ public class AudValidationRule implements TokenValidationRule {
*/
@Override
@SneakyThrows
- public Result checkRule(SignedJWT toVerify, @Nullable Map additional) {
- try {
- final JWTClaimsSet claimsSet = toVerify.getJWTClaimsSet();
- final List errors = new ArrayList<>();
+ public Result checkRule(
+ @NotNull ClaimToken toVerify, @Nullable Map additional) {
+ final List errors = new ArrayList<>();
- final List audiences = claimsSet.getAudience();
+ final Object claim = toVerify.getClaims().get(JWTClaimNames.AUDIENCE);
+ if (!(claim instanceof List)) {
+ errors.add("Audience claim is not a list");
+ } else {
+ final List> audiences = (List>) claim;
audiences.forEach(a -> monitor.info("RECEIVED DAP AUDIENCE TO VERIFY: " + a));
if (audiences.isEmpty()) {
@@ -55,17 +57,12 @@ public Result checkRule(SignedJWT toVerify, @Nullable Map checkRule(SignedJWT toVerify, @Nullable Map additional) {
- try {
- final JWTClaimsSet claimsSet = toVerify.getJWTClaimsSet();
- final List errors = new ArrayList<>();
+ public Result checkRule(
+ @NotNull ClaimToken toVerify, @Nullable Map additional) {
+ final List errors = new ArrayList<>();
- final Instant now = clock.instant();
- final Date expires = claimsSet.getExpirationTime();
- var expiresSet = expires != null;
- if (!expiresSet) {
- errors.add("Required expiration time (exp) claim is missing in token");
- } else if (now.isAfter(convertToUtcTime(expires))) {
+ final Instant now = clock.instant();
+ final Object claim = toVerify.getClaims().get(JWTClaimNames.EXPIRATION_TIME);
+ if (!(claim instanceof Date)) {
+ errors.add("Required expiration (exp) claim is missing in token");
+ } else {
+ final Date expires = (Date) claim;
+ if (now.isAfter(convertToUtcTime(expires))) {
errors.add("Token has expired (exp)");
}
+ }
- if (errors.isEmpty()) {
- return Result.success(toVerify);
- } else {
- return Result.failure(errors);
- }
- } catch (final ParseException parseException) {
- throw new EdcException(
- String.format(
- "%s: unable to parse SignedJWT (%s)",
- this.getClass().getSimpleName(), parseException.getMessage()));
+ if (errors.isEmpty()) {
+ return Result.success();
+ } else {
+ return Result.failure(errors);
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IatValidationRule.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IatValidationRule.java
index d4959e4e0..a5185e559 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IatValidationRule.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IatValidationRule.java
@@ -15,9 +15,6 @@
import static java.time.ZoneOffset.UTC;
-import com.nimbusds.jwt.JWTClaimsSet;
-import com.nimbusds.jwt.SignedJWT;
-import java.text.ParseException;
import java.time.Clock;
import java.time.Instant;
import java.time.ZonedDateTime;
@@ -27,9 +24,11 @@
import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
-import org.eclipse.dataspaceconnector.spi.EdcException;
+import net.catenax.edc.oauth2.jwt.decorator.JWTClaimNames;
+import org.eclipse.dataspaceconnector.spi.iam.ClaimToken;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationRule;
import org.eclipse.dataspaceconnector.spi.result.Result;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@RequiredArgsConstructor
@@ -43,31 +42,31 @@ public class IatValidationRule implements TokenValidationRule {
* @param additional No more additional information needed for this validation, can be null.
*/
@Override
- public Result checkRule(SignedJWT toVerify, @Nullable Map additional) {
- try {
- JWTClaimsSet claimsSet = toVerify.getJWTClaimsSet();
- List errors = new ArrayList<>();
+ public Result checkRule(
+ @NotNull ClaimToken toVerify, @Nullable Map additional) {
+ List errors = new ArrayList<>();
- Instant now = clock.instant();
- Date issuedAt = claimsSet.getIssueTime();
- if (claimsSet.getExpirationTime() != null) {
- if (issuedAt.toInstant().isAfter(claimsSet.getExpirationTime().toInstant())) {
+ Instant now = clock.instant();
+ final Object issuedAtClaim = toVerify.getClaims().get(JWTClaimNames.ISSUED_AT);
+ if (!(issuedAtClaim instanceof Date)) {
+ errors.add("Issued at (iat) claim is missing in token");
+ } else {
+ final Object expirationTimeClaim = toVerify.getClaims().get(JWTClaimNames.EXPIRATION_TIME);
+ if (expirationTimeClaim instanceof Date) {
+ Date expirationTime = (Date) expirationTimeClaim;
+ Date issuedAt = (Date) issuedAtClaim;
+ if (issuedAt.toInstant().isAfter(expirationTime.toInstant())) {
errors.add("Issued at (iat) claim is after expiration time (exp) claim in token");
} else if (now.isBefore(convertToUtcTime(issuedAt))) {
errors.add("Current date/time before issued at (iat) claim in token");
}
}
+ }
- if (errors.isEmpty()) {
- return Result.success(toVerify);
- } else {
- return Result.failure(errors);
- }
- } catch (final ParseException parseException) {
- throw new EdcException(
- String.format(
- "%s: unable to parse SignedJWT (%s)",
- this.getClass().getSimpleName(), parseException.getMessage()));
+ if (errors.isEmpty()) {
+ return Result.success();
+ } else {
+ return Result.failure(errors);
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IdsValidationRule.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IdsValidationRule.java
index 5d3220cbd..6a61cd6bf 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IdsValidationRule.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/IdsValidationRule.java
@@ -14,12 +14,12 @@
package net.catenax.edc.oauth2.jwt.validation;
-import com.nimbusds.jwt.SignedJWT;
-import java.text.ParseException;
import java.util.Map;
import org.eclipse.dataspaceconnector.spi.EdcException;
+import org.eclipse.dataspaceconnector.spi.iam.ClaimToken;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationRule;
import org.eclipse.dataspaceconnector.spi.result.Result;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class IdsValidationRule implements TokenValidationRule {
@@ -31,7 +31,8 @@ public IdsValidationRule(boolean validateReferring) {
/** Validates the JWT by checking extended IDS rules. */
@Override
- public Result checkRule(SignedJWT jwt, @Nullable Map additional) {
+ public Result checkRule(
+ @NotNull ClaimToken toVerify, @Nullable Map additional) {
if (additional != null) {
var issuerConnector = additional.get("issuerConnector");
if (issuerConnector == null) {
@@ -43,44 +44,36 @@ public Result checkRule(SignedJWT jwt, @Nullable Map
securityProfile = additional.get("securityProfile").toString();
}
- return verifyTokenIds(jwt, issuerConnector.toString(), securityProfile);
+ return verifyTokenIds(additional, issuerConnector.toString(), securityProfile);
} else {
throw new EdcException("Missing required additional information for IDS token validation");
}
}
- private Result verifyTokenIds(
- SignedJWT jwt, String issuerConnector, @Nullable String securityProfile) {
- try {
- var claims = jwt.getJWTClaimsSet().getClaims();
+ private Result verifyTokenIds(
+ Map claims, String issuerConnector, @Nullable String securityProfile) {
- // referringConnector (DAT, optional) vs issuerConnector (Message-Header,
- // mandatory)
- var referringConnector = claims.get("referringConnector");
+ // referringConnector (DAT, optional) vs issuerConnector (Message-Header,
+ // mandatory)
+ var referringConnector = claims.get("referringConnector");
- if (validateReferring && !issuerConnector.equals(referringConnector)) {
- return Result.failure(
- "referingConnector in token does not match issuerConnector in message");
- }
+ if (validateReferring && !issuerConnector.equals(referringConnector)) {
+ return Result.failure("referingConnector in token does not match issuerConnector in message");
+ }
- // securityProfile (DAT, mandatory) vs securityProfile (Message-Payload,
- // optional)
- try {
- var tokenSecurityProfile = claims.get("securityProfile");
+ // securityProfile (DAT, mandatory) vs securityProfile (Message-Payload,
+ // optional)
+ try {
+ var tokenSecurityProfile = claims.get("securityProfile");
- if (securityProfile != null && !securityProfile.equals(tokenSecurityProfile)) {
- return Result.failure(
- "securityProfile in token does not match securityProfile in payload");
- }
- } catch (Exception e) {
- // Nothing to do, payload mostly no connector instance
+ if (securityProfile != null && !securityProfile.equals(tokenSecurityProfile)) {
+ return Result.failure("securityProfile in token does not match securityProfile in payload");
}
- } catch (ParseException e) {
- throw new EdcException(
- "IdsValidationRule: unable to parse SignedJWT (" + e.getMessage() + ")");
+ } catch (Exception e) {
+ // Nothing to do, payload mostly no connector instance
}
- return Result.success(jwt);
+ return Result.success();
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/JwtValidationExtension.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/JwtValidationExtension.java
index 310c979de..c4e5d9ff4 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/JwtValidationExtension.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/JwtValidationExtension.java
@@ -28,11 +28,11 @@
import net.catenax.edc.oauth2.jwk.RsaPublicKeyReader;
import okhttp3.OkHttpClient;
import org.eclipse.dataspaceconnector.iam.oauth2.spi.Oauth2ValidationRulesRegistry;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Inject;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationService;
-import org.eclipse.dataspaceconnector.spi.system.Inject;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/NbfValidationRule.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/NbfValidationRule.java
index 8c4ab3429..88672b8cb 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/NbfValidationRule.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/NbfValidationRule.java
@@ -15,9 +15,6 @@
import static java.time.ZoneOffset.UTC;
-import com.nimbusds.jwt.JWTClaimsSet;
-import com.nimbusds.jwt.SignedJWT;
-import java.text.ParseException;
import java.time.Clock;
import java.time.Duration;
import java.time.Instant;
@@ -28,9 +25,11 @@
import java.util.Map;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
-import org.eclipse.dataspaceconnector.spi.EdcException;
+import net.catenax.edc.oauth2.jwt.decorator.JWTClaimNames;
+import org.eclipse.dataspaceconnector.spi.iam.ClaimToken;
import org.eclipse.dataspaceconnector.spi.jwt.TokenValidationRule;
import org.eclipse.dataspaceconnector.spi.result.Result;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@RequiredArgsConstructor
@@ -46,31 +45,27 @@ public class NbfValidationRule implements TokenValidationRule {
* @param additional No more additional information needed for this validation, can be null.
*/
@Override
- public Result checkRule(
- final SignedJWT toVerify, @Nullable final Map additional) {
- try {
- final JWTClaimsSet claimsSet = toVerify.getJWTClaimsSet();
- final List errors = new ArrayList<>();
+ public Result checkRule(
+ @NotNull ClaimToken toVerify, @Nullable Map additional) {
+ final List errors = new ArrayList<>();
- final Instant now = clock.instant();
- final Instant leewayNow = now.plusSeconds(notBeforeValidationLeeway.toSeconds());
- final Date notBefore = claimsSet.getNotBeforeTime();
- if (notBefore == null) {
- errors.add("Required not before (nbf) claim is missing in token");
- } else if (leewayNow.isBefore(dateToInstant(notBefore))) {
+ final Instant now = clock.instant();
+ final Instant leewayNow = now.plusSeconds(notBeforeValidationLeeway.toSeconds());
+
+ final Object claim = toVerify.getClaims().get(JWTClaimNames.NOT_BEFORE);
+ if (!(claim instanceof Date)) {
+ errors.add("Required not before (nbf) claim is missing in token");
+ } else {
+ final Date notBefore = (Date) claim;
+ if (leewayNow.isBefore(dateToInstant(notBefore))) {
errors.add("Current date/time with leeway before the not before (nbf) claim in token");
}
+ }
- if (errors.isEmpty()) {
- return Result.success(toVerify);
- } else {
- return Result.failure(errors);
- }
- } catch (final ParseException parseException) {
- throw new EdcException(
- String.format(
- "%s: unable to parse SignedJWT (%s)",
- this.getClass().getSimpleName(), parseException.getMessage()));
+ if (errors.isEmpty()) {
+ return Result.success();
+ } else {
+ return Result.failure(errors);
}
}
diff --git a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/TokenValidationServiceImpl.java b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/TokenValidationServiceImpl.java
index 0ca7d3eeb..6a7e4e17f 100644
--- a/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/TokenValidationServiceImpl.java
+++ b/edc-extensions/cx-oauth2/src/main/java/net/catenax/edc/oauth2/jwt/validation/TokenValidationServiceImpl.java
@@ -63,10 +63,11 @@ public Result validate(@NonNull final TokenRepresentation tokenRepre
}
claimsSet = signedJwt.getJWTClaimsSet();
+ var claimToken = ClaimToken.Builder.newInstance().claims(claimsSet.getClaims()).build();
final List errors =
rulesRegistry.getRules().stream()
- .map(r -> r.checkRule(signedJwt, additional))
+ .map(r -> r.checkRule(claimToken, additional))
.filter(Result::failed)
.map(Result::getFailureMessages)
.flatMap(Collection::stream)
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecoratorTest.java
index 52921d1f9..99ed5ae93 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/DapsJwtDecoratorTest.java
@@ -13,10 +13,8 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
class DapsJwtDecoratorTest {
@@ -24,17 +22,11 @@ class DapsJwtDecoratorTest {
void decorate() {
final DapsJwtDecorator decorator = new DapsJwtDecorator();
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = Mockito.mock(JWTClaimsSet.Builder.class);
+ Assertions.assertTrue(decorator.claims().containsKey("@context"));
+ Assertions.assertEquals(
+ "https://w3id.org/idsa/contexts/context.jsonld", decorator.claims().get("@context"));
- Mockito.when(claimsSetBuilder.claim(Mockito.anyString(), Mockito.anyString()))
- .thenReturn(claimsSetBuilder);
-
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
-
- Mockito.verify(claimsSetBuilder, Mockito.times(1))
- .claim("@context", "https://w3id.org/idsa/contexts/context.jsonld");
- Mockito.verify(claimsSetBuilder, Mockito.times(1)).claim("@type", "ids:DatRequestToken");
- Mockito.verifyNoMoreInteractions(jwsHeaderBuilder, claimsSetBuilder);
+ Assertions.assertTrue(decorator.claims().containsKey("@type"));
+ Assertions.assertEquals("ids:DatRequestToken", decorator.claims().get("@type"));
}
}
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecoratorTest.java
index a5e36561f..fe5a3e903 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/ExpJwtDecoratorTest.java
@@ -13,8 +13,6 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.time.Clock;
import java.time.Duration;
import java.time.Instant;
@@ -32,15 +30,11 @@ void decorate() {
final ExpJwtDecorator decorator = new ExpJwtDecorator(clock, expiration);
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = new JWTClaimsSet.Builder();
-
Mockito.when(clock.instant()).thenReturn(Instant.ofEpochSecond(0));
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
- JWTClaimsSet jwtClaimsSet = claimsSetBuilder.build();
- Assertions.assertNotNull(jwtClaimsSet.getExpirationTime());
- Assertions.assertEquals(new Date(100000), jwtClaimsSet.getExpirationTime());
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.EXPIRATION_TIME));
+ Assertions.assertEquals(
+ new Date(100000), decorator.claims().get(JWTClaimNames.EXPIRATION_TIME));
}
@Test
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecoratorTest.java
index 9f37c4338..898903e62 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IatJwtDecoratorTest.java
@@ -13,8 +13,6 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.time.Clock;
import java.time.Instant;
import java.util.Date;
@@ -30,15 +28,10 @@ void decorate() {
final IatJwtDecorator decorator = new IatJwtDecorator(clock);
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = new JWTClaimsSet.Builder();
-
Mockito.when(clock.instant()).thenReturn(Instant.ofEpochSecond(0));
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
- JWTClaimsSet jwtClaimsSet = claimsSetBuilder.build();
- Assertions.assertNotNull(jwtClaimsSet.getIssueTime());
- Assertions.assertEquals(new Date(0), jwtClaimsSet.getIssueTime());
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.ISSUED_AT));
+ Assertions.assertEquals(new Date(0), decorator.claims().get(JWTClaimNames.ISSUED_AT));
}
@Test
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecoratorTest.java
index 8f5ac315b..b9180e5ec 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IdsAudJwtDecoratorTest.java
@@ -14,10 +14,9 @@
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
+import java.util.List;
+import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
class IdsAudJwtDecoratorTest {
@@ -26,12 +25,8 @@ void decorate() {
final String expectedAudience = "idsc:IDS_CONNECTORS_ALL";
final IdsAudJwtDecorator decorator = new IdsAudJwtDecorator();
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = Mockito.mock(JWTClaimsSet.Builder.class);
-
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
-
- Mockito.verify(claimsSetBuilder, Mockito.times(1)).audience(expectedAudience);
- Mockito.verifyNoMoreInteractions(jwsHeaderBuilder, claimsSetBuilder);
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.AUDIENCE));
+ Assertions.assertEquals(
+ List.of(expectedAudience), decorator.claims().get(JWTClaimNames.AUDIENCE));
}
}
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecoratorTest.java
index e74d0ea85..fba6a1d52 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/IssJwtDecoratorTest.java
@@ -13,12 +13,9 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.util.UUID;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
class IssJwtDecoratorTest {
@@ -27,13 +24,8 @@ void decorate() {
final String expectedIssuer = UUID.randomUUID().toString();
final IssJwtDecorator decorator = new IssJwtDecorator(expectedIssuer);
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = Mockito.mock(JWTClaimsSet.Builder.class);
-
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
-
- Mockito.verify(claimsSetBuilder, Mockito.times(1)).issuer(expectedIssuer);
- Mockito.verifyNoMoreInteractions(jwsHeaderBuilder, claimsSetBuilder);
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.ISSUER));
+ Assertions.assertEquals(expectedIssuer, decorator.claims().get(JWTClaimNames.ISSUER));
}
@Test
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecoratorTest.java
index ccc6e3dc8..681113b38 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/JtiJwtDecoratorTest.java
@@ -13,11 +13,8 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
class JtiJwtDecoratorTest {
@@ -25,12 +22,6 @@ class JtiJwtDecoratorTest {
void decorate() {
final JtiJwtDecorator decorator = new JtiJwtDecorator();
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = new JWTClaimsSet.Builder();
-
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
-
- JWTClaimsSet jwtClaimsSet = claimsSetBuilder.build();
- Assertions.assertNotNull(jwtClaimsSet.getJWTID());
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.JWT_ID));
}
}
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/Oauth2JwtDecoratorRegistryRegistryImplTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/Oauth2JwtDecoratorRegistryRegistryImplTest.java
index fa81fb35d..e11b78a38 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/Oauth2JwtDecoratorRegistryRegistryImplTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/Oauth2JwtDecoratorRegistryRegistryImplTest.java
@@ -13,9 +13,8 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.util.Arrays;
+import java.util.Map;
import org.eclipse.dataspaceconnector.spi.jwt.JwtDecorator;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
@@ -72,16 +71,37 @@ void test() {
private static class A_JwtDecorator implements JwtDecorator {
@Override
- public void decorate(JWSHeader.Builder header, JWTClaimsSet.Builder claimsSet) {}
+ public Map claims() {
+ return null;
+ }
+
+ @Override
+ public Map headers() {
+ return null;
+ }
}
private static class B_JwtDecorator implements JwtDecorator {
@Override
- public void decorate(JWSHeader.Builder header, JWTClaimsSet.Builder claimsSet) {}
+ public Map claims() {
+ return null;
+ }
+
+ @Override
+ public Map headers() {
+ return null;
+ }
}
private static class C_JwtDecorator implements JwtDecorator {
@Override
- public void decorate(JWSHeader.Builder header, JWTClaimsSet.Builder claimsSet) {}
+ public Map claims() {
+ return null;
+ }
+
+ @Override
+ public Map headers() {
+ return null;
+ }
}
}
diff --git a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecoratorTest.java b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecoratorTest.java
index d86ac0f02..4dc4f32eb 100644
--- a/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecoratorTest.java
+++ b/edc-extensions/cx-oauth2/src/test/java/net/catenax/edc/oauth2/jwt/decorator/SubJwtDecoratorTest.java
@@ -13,12 +13,9 @@
*/
package net.catenax.edc.oauth2.jwt.decorator;
-import com.nimbusds.jose.JWSHeader;
-import com.nimbusds.jwt.JWTClaimsSet;
import java.util.UUID;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
class SubJwtDecoratorTest {
@@ -27,13 +24,8 @@ void decorate() {
final String expectedSubject = UUID.randomUUID().toString();
final SubJwtDecorator decorator = new SubJwtDecorator(expectedSubject);
- final JWSHeader.Builder jwsHeaderBuilder = Mockito.mock(JWSHeader.Builder.class);
- final JWTClaimsSet.Builder claimsSetBuilder = Mockito.mock(JWTClaimsSet.Builder.class);
-
- decorator.decorate(jwsHeaderBuilder, claimsSetBuilder);
-
- Mockito.verify(claimsSetBuilder, Mockito.times(1)).subject(expectedSubject);
- Mockito.verifyNoMoreInteractions(jwsHeaderBuilder, claimsSetBuilder);
+ Assertions.assertTrue(decorator.claims().containsKey(JWTClaimNames.SUBJECT));
+ Assertions.assertEquals(expectedSubject, decorator.claims().get(JWTClaimNames.SUBJECT));
}
@Test
diff --git a/edc-extensions/data-encryption/pom.xml b/edc-extensions/data-encryption/pom.xml
index 031ad7d21..0d1dad90d 100644
--- a/edc-extensions/data-encryption/pom.xml
+++ b/edc-extensions/data-encryption/pom.xml
@@ -18,7 +18,7 @@
edc-extensions
net.catenax.edc.extensions
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-extensions/data-encryption/src/main/java/net/catenax/edc/data/encryption/DataEncryptionExtension.java b/edc-extensions/data-encryption/src/main/java/net/catenax/edc/data/encryption/DataEncryptionExtension.java
index 5f9446dfa..ac5d2898b 100644
--- a/edc-extensions/data-encryption/src/main/java/net/catenax/edc/data/encryption/DataEncryptionExtension.java
+++ b/edc-extensions/data-encryption/src/main/java/net/catenax/edc/data/encryption/DataEncryptionExtension.java
@@ -22,12 +22,12 @@
import net.catenax.edc.data.encryption.key.CryptoKeyFactory;
import net.catenax.edc.data.encryption.key.CryptoKeyFactoryImpl;
import net.catenax.edc.data.encryption.provider.AesKeyProvider;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.EdcException;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
import org.eclipse.dataspaceconnector.spi.security.Vault;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
import org.eclipse.dataspaceconnector.transfer.dataplane.spi.security.DataEncrypter;
diff --git a/edc-extensions/dataplane-selector-configuration/pom.xml b/edc-extensions/dataplane-selector-configuration/pom.xml
index 524376a42..5ce58e204 100644
--- a/edc-extensions/dataplane-selector-configuration/pom.xml
+++ b/edc-extensions/dataplane-selector-configuration/pom.xml
@@ -18,7 +18,7 @@
edc-extensions
net.catenax.edc.extensions
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-extensions/dataplane-selector-configuration/src/main/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtension.java b/edc-extensions/dataplane-selector-configuration/src/main/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtension.java
index cd9a04271..976d468d9 100644
--- a/edc-extensions/dataplane-selector-configuration/src/main/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtension.java
+++ b/edc-extensions/dataplane-selector-configuration/src/main/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtension.java
@@ -24,10 +24,10 @@
import java.util.stream.Collectors;
import org.eclipse.dataspaceconnector.dataplane.selector.DataPlaneSelectorService;
import org.eclipse.dataspaceconnector.dataplane.selector.instance.DataPlaneInstanceImpl;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.EdcException;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
import org.eclipse.dataspaceconnector.spi.monitor.Monitor;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
import org.eclipse.dataspaceconnector.spi.system.configuration.Config;
@@ -53,25 +53,32 @@
* edc.dataplane.selector..url |
* URL to connect to the Data Plane Instance. |
* X |
- * http://localhost:8181/control/transfer |
+ * http://localhost:8181/control/transfer |
*
*
- * edc.dataplane.selector..sourcetypes |
+ * edc.dataplane.selector..sourcetypes |
* Source Types in a comma separated List. |
* X |
* HttpData |
*
*
- * edc.dataplane.selector..destinationtypes |
+ * edc.dataplane.selector..destinationtypes |
* Destination Types in a comma separated List. |
* X |
* HttpProxy |
*
*
- * edc.dataplane.selector..properties |
- * Additional properties of the Data Plane Instance. |
+ * edc.dataplane.selector..properties |
+ * Additional properties of the Data Plane
+ * Instance. |
* (X) |
- * { "publicApiUrl:": "http://localhost:8181/api/public" } |
+ * { "publicApiUrl:": "http://localhost:8181/api/public"
+ * } |
*
*
*
diff --git a/edc-extensions/dataplane-selector-configuration/src/test/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtensionEdcExtensionTest.java b/edc-extensions/dataplane-selector-configuration/src/test/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtensionEdcExtensionTest.java
index 8d162e0d3..6ace3d84c 100644
--- a/edc-extensions/dataplane-selector-configuration/src/test/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtensionEdcExtensionTest.java
+++ b/edc-extensions/dataplane-selector-configuration/src/test/java/net/catenax/edc/dataplane/selector/configuration/DataPlaneSelectorConfigurationServiceExtensionEdcExtensionTest.java
@@ -18,7 +18,7 @@
import java.util.Map;
import org.eclipse.dataspaceconnector.dataplane.selector.DataPlaneSelectorService;
import org.eclipse.dataspaceconnector.junit.extensions.EdcExtension;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
import org.eclipse.dataspaceconnector.spi.types.domain.DataAddress;
diff --git a/edc-extensions/hashicorp-vault/pom.xml b/edc-extensions/hashicorp-vault/pom.xml
index 9d3dbec38..b3806c341 100644
--- a/edc-extensions/hashicorp-vault/pom.xml
+++ b/edc-extensions/hashicorp-vault/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc.extensions
edc-extensions
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/AbstractHashicorpVaultExtension.java b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/AbstractHashicorpVaultExtension.java
index 4512e8512..23486385a 100644
--- a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/AbstractHashicorpVaultExtension.java
+++ b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/AbstractHashicorpVaultExtension.java
@@ -16,7 +16,7 @@
import java.time.Duration;
import okhttp3.OkHttpClient;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
/**
diff --git a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultHealthExtension.java b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultHealthExtension.java
index 9e904a2c7..62bc5bc00 100644
--- a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultHealthExtension.java
+++ b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultHealthExtension.java
@@ -15,8 +15,8 @@
package net.catenax.edc.hashicorpvault;
import okhttp3.OkHttpClient;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
-import org.eclipse.dataspaceconnector.spi.system.Requires;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Requires;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
import org.eclipse.dataspaceconnector.spi.system.health.HealthCheckService;
diff --git a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultVaultExtension.java b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultVaultExtension.java
index f6afafb07..c7bfc6674 100644
--- a/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultVaultExtension.java
+++ b/edc-extensions/hashicorp-vault/src/main/java/net/catenax/edc/hashicorpvault/HashicorpVaultVaultExtension.java
@@ -17,11 +17,11 @@
package net.catenax.edc.hashicorpvault;
import okhttp3.OkHttpClient;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.Provides;
import org.eclipse.dataspaceconnector.spi.security.CertificateResolver;
import org.eclipse.dataspaceconnector.spi.security.PrivateKeyResolver;
import org.eclipse.dataspaceconnector.spi.security.Vault;
import org.eclipse.dataspaceconnector.spi.security.VaultPrivateKeyResolver;
-import org.eclipse.dataspaceconnector.spi.system.Provides;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtension;
import org.eclipse.dataspaceconnector.spi.system.ServiceExtensionContext;
diff --git a/edc-extensions/pom.xml b/edc-extensions/pom.xml
index 4517e418e..e6e64c87a 100644
--- a/edc-extensions/pom.xml
+++ b/edc-extensions/pom.xml
@@ -17,7 +17,7 @@
net.catenax.edc
product-edc-parent
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-extensions/postgresql-migration/pom.xml b/edc-extensions/postgresql-migration/pom.xml
index 3075a9632..f31e80aad 100644
--- a/edc-extensions/postgresql-migration/pom.xml
+++ b/edc-extensions/postgresql-migration/pom.xml
@@ -17,7 +17,7 @@
edc-extensions
net.catenax.edc.extensions
- 0.1.1
+ 0.1.2
4.0.0
diff --git a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractDefinitionPostgresqlMigrationExtension.java b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractDefinitionPostgresqlMigrationExtension.java
index 1834cde8f..31285de95 100644
--- a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractDefinitionPostgresqlMigrationExtension.java
+++ b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractDefinitionPostgresqlMigrationExtension.java
@@ -14,7 +14,7 @@
package net.catenax.edc.postgresql.migration;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
public class ContractDefinitionPostgresqlMigrationExtension
extends AbstractPostgresqlMigrationExtension {
diff --git a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractNegotiationPostgresqlMigrationExtension.java b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractNegotiationPostgresqlMigrationExtension.java
index 8c732742f..b198b4834 100644
--- a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractNegotiationPostgresqlMigrationExtension.java
+++ b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/ContractNegotiationPostgresqlMigrationExtension.java
@@ -14,7 +14,7 @@
package net.catenax.edc.postgresql.migration;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
public class ContractNegotiationPostgresqlMigrationExtension
extends AbstractPostgresqlMigrationExtension {
diff --git a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/PolicyPostgresqlMigrationExtension.java b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/PolicyPostgresqlMigrationExtension.java
index 9e3b64ff9..5e6333ad1 100644
--- a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/PolicyPostgresqlMigrationExtension.java
+++ b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/PolicyPostgresqlMigrationExtension.java
@@ -14,7 +14,7 @@
package net.catenax.edc.postgresql.migration;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
public class PolicyPostgresqlMigrationExtension extends AbstractPostgresqlMigrationExtension {
private static final String NAME_SUBSYSTEM = "policy";
diff --git a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/TransferProcessPostgresqlMigrationExtension.java b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/TransferProcessPostgresqlMigrationExtension.java
index 4ef0d97f4..f17373cf5 100644
--- a/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/TransferProcessPostgresqlMigrationExtension.java
+++ b/edc-extensions/postgresql-migration/src/main/java/net/catenax/edc/postgresql/migration/TransferProcessPostgresqlMigrationExtension.java
@@ -14,7 +14,7 @@
package net.catenax.edc.postgresql.migration;
-import org.eclipse.dataspaceconnector.spi.EdcSetting;
+import org.eclipse.dataspaceconnector.runtime.metamodel.annotation.EdcSetting;
public class TransferProcessPostgresqlMigrationExtension
extends AbstractPostgresqlMigrationExtension {
diff --git a/edc-tests/pom.xml b/edc-tests/pom.xml
index 242c456c8..2c3e66e79 100644
--- a/edc-tests/pom.xml
+++ b/edc-tests/pom.xml
@@ -19,7 +19,7 @@
net.catenax.edc
product-edc-parent
- 0.1.1
+ 0.1.2
net.catenax.edc.tests
@@ -30,7 +30,7 @@
${project.groupId}_${project.artifactId}
2.9.1
4.5.13
- 1.4.0
+ 1.4.1
1.7.36
diff --git a/edc-tests/src/main/resources/deployment/helm/all-in-one/Chart.yaml b/edc-tests/src/main/resources/deployment/helm/all-in-one/Chart.yaml
index 63ee4b5b7..ab8eee0cd 100644
--- a/edc-tests/src/main/resources/deployment/helm/all-in-one/Chart.yaml
+++ b/edc-tests/src/main/resources/deployment/helm/all-in-one/Chart.yaml
@@ -35,12 +35,12 @@ dependencies:
# PLATO CONNECTOR
- name: edc-controlplane
version: ">=0.0.1"
- repository: "file://../../../../../../../deployment/helm/edc-controlplane"
+ repository: "file://../../../../../../../charts/edc-controlplane"
alias: platoedccontrolplane
condition: platoedccontrolplane.enabled
- name: edc-dataplane
version: ">=0.0.1"
- repository: "file://../../../../../../../deployment/helm/edc-dataplane"
+ repository: "file://../../../../../../../charts/edc-dataplane"
alias: platoedcdataplane
condition: platoedcdataplane.enabled
- name: backend-service
@@ -62,12 +62,12 @@ dependencies:
# SOKRATES CONNECTOR
- name: edc-controlplane
version: ">=0.0.1"
- repository: "file://../../../../../../../deployment/helm/edc-controlplane"
+ repository: "file://../../../../../../../charts/edc-controlplane"
alias: sokratesedccontrolplane
condition: sokratesedccontrolplane.enabled
- name: edc-dataplane
version: ">=0.0.1"
- repository: "file://../../../../../../../deployment/helm/edc-dataplane"
+ repository: "file://../../../../../../../charts/edc-dataplane"
alias: sokratesedcdataplane
condition: sokratesedcdataplane.enabled
- name: backend-service
diff --git a/pom.xml b/pom.xml
index d029601c0..2e858d861 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,7 +18,7 @@
net.catenax.edc
product-edc-parent
- 0.1.1
+ 0.1.2
pom
product-edc
@@ -47,8 +47,8 @@
3.3.0
- 3.2.2
- 2.25.0
+ 3.3.0
+ 2.27.1
3.1.0
3.4.1
2.0.0
@@ -63,26 +63,28 @@
1.1.0
3.9.1.2184
4.2.0
+ 0.0.1-SNAPSHOT
- 0.0.1-20220902-SNAPSHOT
+ 0.0.1-20220922-SNAPSHOT
1.2.2
42.5.0
- 9.2.2
+ 9.3.1
+ 8.23
- 5.9.0
+ 5.9.1
1.8.2
- 7.6.0
- 5.1.1
+ 7.8.0
+ 5.2.0
1.1.0
- 4.7.0
+ 4.8.0
1.18.24
1.70
4.9.3
1.17.3
2.0.0-beta1
- 1.4.0
+ 1.4.1
2.2
@@ -112,6 +114,16 @@
Fraunhofer IAIS
https://maven.iais.fraunhofer.de/artifactory/eis-ids-public
+
+ dash-licenses-snapshots
+ https://repo.eclipse.org/content/repositories/dash-licenses-snapshots
+
+ true
+
+
+ false
+
+
@@ -192,6 +204,11 @@
maven-compiler-plugin
${org.apache.maven.plugins.compiler.version}
+
+ org.eclipse.dash
+ license-tool-plugin
+ ${org.eclipse.dash.license.tool.plugin.version}
+
org.projectlombok
lombok-maven-plugin
@@ -376,6 +393,11 @@
+
+ com.nimbusds
+ nimbus-jose-jwt
+ ${com.nimbus.jose.jwt.version}
+
org.postgresql
postgresql
@@ -593,6 +615,11 @@
control-api
${org.eclipse.dataspaceconnector.version}
+
+ org.eclipse.dataspaceconnector
+ control-plane-core
+ ${org.eclipse.dataspaceconnector.version}
+
org.eclipse.dataspaceconnector
core
@@ -913,6 +940,11 @@
policy-engine
${org.eclipse.dataspaceconnector.version}
+
+ org.eclipse.dataspaceconnector
+ policy-engine-spi
+ ${org.eclipse.dataspaceconnector.version}
+
org.eclipse.dataspaceconnector
policy-evaluator
@@ -1169,7 +1201,7 @@
org.glassfish.jaxb
jaxb-runtime
- 2.3.3
+ 4.0.1
@@ -1206,5 +1238,6 @@
+