From d53191f79319aa4e76e1a47d91542b508c4db1de Mon Sep 17 00:00:00 2001 From: Paul Latzelsperger <43503240+paullatzelsperger@users.noreply.github.com> Date: Mon, 10 Jun 2024 21:37:30 +0200 Subject: [PATCH 1/5] fix: adopt EDC test runtime model (#1355) * feat(test): adopt upstream test runtime model * re-enable verbosity * use http for localhost * fix --- .../actions/publish-docker-image/action.yml | 2 +- .../actions/run-deployment-test/action.yml | 2 +- .github/workflows/verify.yaml | 2 +- DEPENDENCIES | 395 +++++++++--------- .../edc/lifecycle/ParticipantRuntime.java | 45 +- .../tractusx/edc/lifecycle/Runtimes.java | 4 +- .../edc/tests/catalog/CatalogTest.java | 11 +- .../tests/edrv2/EdrCacheApiEndToEndTest.java | 9 +- .../edc/tests/edrv2/NegotiateEdrTest.java | 11 +- .../TractusxIatpParticipantBase.java | 2 +- .../participant/TractusxParticipantBase.java | 4 +- .../tests/runtimes/BeforeInitCallback.java | 9 +- .../edc/tests/runtimes/DataWiper.java | 2 +- .../tests/runtimes/ParticipantRuntime.java | 34 +- .../runtimes/ParticipantRuntimeExtension.java | 51 +++ .../tests/runtimes/PgParticipantRuntime.java | 81 +--- .../tests/runtimes/PgRuntimeExtension.java | 101 +++++ .../tractusx/edc/tests/runtimes/Runtimes.java | 12 +- .../transfer/HttpConsumerPullBaseTest.java | 1 - .../AbstractIatpConsumerPullTest.java | 11 +- .../tests/transfer/CredentialSpoofTest.java | 41 +- .../transfer/DimHttpConsumerPullTest.java | 56 +-- .../transfer/StsHttpConsumerPullTest.java | 18 +- .../iatp/harness/IatpHelperFunctions.java | 22 +- .../iatp/runtime/CredentialWiper.java | 50 +++ .../iatp/runtime/IatpParticipantRuntime.java | 34 +- .../IatpParticipantRuntimeExtension.java | 39 ++ .../tests/transfer/iatp/runtime/Runtimes.java | 14 +- .../policy/PolicyMonitorEndToEndTest.java | 11 +- .../transfer/TransferPullEndToEndTest.java | 11 +- .../transfer/TransferPushEndToEndTest.java | 11 +- .../TransferWithTokenRefreshTest.java | 10 +- .../transfer/test/AzureToAzureTest.java | 3 +- .../transfer/test/ParticipantRuntime.java | 10 +- .../dataplane/transfer/test/S3ToS3Test.java | 3 +- .../DataPlaneTokenRefreshEndToEndTest.java | 41 +- gradle/libs.versions.toml | 2 +- .../multitenancy/MultiTenantRuntime.java | 6 +- .../multitenancy/MultiTenantRuntimeTest.java | 6 +- 39 files changed, 621 insertions(+), 556 deletions(-) create mode 100644 edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntimeExtension.java create mode 100644 edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgRuntimeExtension.java create mode 100644 edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/CredentialWiper.java create mode 100644 edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntimeExtension.java diff --git a/.github/actions/publish-docker-image/action.yml b/.github/actions/publish-docker-image/action.yml index bf2e274ac..ad3d893a4 100644 --- a/.github/actions/publish-docker-image/action.yml +++ b/.github/actions/publish-docker-image/action.yml @@ -49,7 +49,7 @@ inputs: runs: using: "composite" steps: - - uses: actions/checkout@v3.3.0 + - uses: actions/checkout@v4 - name: Download OpenTelemetry shell: bash diff --git a/.github/actions/run-deployment-test/action.yml b/.github/actions/run-deployment-test/action.yml index 7deb744d1..eb7aa820e 100644 --- a/.github/actions/run-deployment-test/action.yml +++ b/.github/actions/run-deployment-test/action.yml @@ -48,7 +48,7 @@ inputs: runs: using: "composite" steps: - - uses: actions/checkout@v3.3.0 + - uses: actions/checkout@v4 - uses: ./.github/actions/setup-java - name: Setup Helm diff --git a/.github/workflows/verify.yaml b/.github/workflows/verify.yaml index 35ac5ff9c..400fd67da 100644 --- a/.github/workflows/verify.yaml +++ b/.github/workflows/verify.yaml @@ -137,7 +137,7 @@ jobs: - name: Run E2E tests (${{ matrix.variant.dir }}) run: | ./gradlew compileJava compileTestJava --refresh-dependencies - ./gradlew -p ${{ matrix.variant.dir }} test -DincludeTags="EndToEndTest" + ./gradlew -p ${{ matrix.variant.dir }} test -DincludeTags="EndToEndTest" -PverboseTest=true postgres-tests: runs-on: ubuntu-latest diff --git a/DEPENDENCIES b/DEPENDENCIES index e9159cc86..fe4c58d33 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -6,19 +6,16 @@ maven/mavencentral/com.apicatalog/iron-verifiable-credentials/0.14.0, Apache-2.0 maven/mavencentral/com.apicatalog/titanium-json-ld/1.0.0, Apache-2.0, approved, clearlydefined maven/mavencentral/com.apicatalog/titanium-json-ld/1.4.0, Apache-2.0, approved, #13683 maven/mavencentral/com.azure/azure-core-http-netty/1.13.11, MIT AND Apache-2.0, approved, #7948 -maven/mavencentral/com.azure/azure-core-http-netty/1.14.0, MIT AND Apache-2.0, approved, #13238 maven/mavencentral/com.azure/azure-core-http-netty/1.15.0, MIT, approved, clearlydefined maven/mavencentral/com.azure/azure-core/1.45.1, MIT AND Apache-2.0, approved, #11845 -maven/mavencentral/com.azure/azure-core/1.46.0, MIT AND Apache-2.0, approved, #13234 maven/mavencentral/com.azure/azure-core/1.49.0, MIT, approved, clearlydefined -maven/mavencentral/com.azure/azure-identity/1.11.2, MIT AND Apache-2.0, approved, #13237 maven/mavencentral/com.azure/azure-identity/1.12.1, MIT AND Apache-2.0, approved, #14412 maven/mavencentral/com.azure/azure-json/1.1.0, MIT AND Apache-2.0, approved, #10547 maven/mavencentral/com.azure/azure-security-keyvault-secrets/4.7.3, MIT, approved, #10868 maven/mavencentral/com.azure/azure-security-keyvault-secrets/4.8.3, MIT, approved, #13690 -maven/mavencentral/com.azure/azure-storage-blob/12.25.2, MIT, approved, #13400 -maven/mavencentral/com.azure/azure-storage-common/12.24.2, MIT, approved, #13402 -maven/mavencentral/com.azure/azure-storage-internal-avro/12.10.2, MIT, approved, #13399 +maven/mavencentral/com.azure/azure-storage-blob/12.26.0, MIT, approved, clearlydefined +maven/mavencentral/com.azure/azure-storage-common/12.25.0, MIT, approved, clearlydefined +maven/mavencentral/com.azure/azure-storage-internal-avro/12.11.0, MIT, approved, clearlydefined maven/mavencentral/com.azure/azure-xml/1.0.0, MIT, approved, #14410 maven/mavencentral/com.ethlo.time/itu/1.7.0, Apache-2.0, approved, clearlydefined maven/mavencentral/com.fasterxml.jackson.core/jackson-annotations/2.10.3, Apache-2.0, approved, CQ21280 @@ -95,20 +92,15 @@ maven/mavencentral/com.googlecode.libphonenumber/libphonenumber/8.11.1, Apache-2 maven/mavencentral/com.jayway.jsonpath/json-path/2.7.0, Apache-2.0, approved, clearlydefined maven/mavencentral/com.jcraft/jzlib/1.1.3, BSD-2-Clause, approved, CQ6218 maven/mavencentral/com.lmax/disruptor/3.4.4, Apache-2.0, approved, clearlydefined -maven/mavencentral/com.microsoft.azure/msal4j-persistence-extension/1.2.0, MIT, approved, clearlydefined maven/mavencentral/com.microsoft.azure/msal4j-persistence-extension/1.3.0, MIT, approved, #14411 -maven/mavencentral/com.microsoft.azure/msal4j/1.14.0, MIT, approved, #14159 maven/mavencentral/com.microsoft.azure/msal4j/1.15.0, MIT, approved, clearlydefined -maven/mavencentral/com.microsoft.azure/msal4j/1.4.0, MIT, approved, clearlydefined maven/mavencentral/com.networknt/json-schema-validator/1.0.76, Apache-2.0, approved, CQ22638 -maven/mavencentral/com.nimbusds/content-type/2.2, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/content-type/2.3, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/lang-tag/1.7, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.28, Apache-2.0, approved, clearlydefined -maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.30.2, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.37.3, Apache-2.0, approved, #11701 maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.39.3, Apache-2.0, approved, #14830 -maven/mavencentral/com.nimbusds/oauth2-oidc-sdk/10.7.1, Apache-2.0, approved, clearlydefined +maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.40, , restricted, clearlydefined maven/mavencentral/com.nimbusds/oauth2-oidc-sdk/11.9.1, Apache-2.0, approved, #12667 maven/mavencentral/com.puppycrawl.tools/checkstyle/10.17.0, LGPL-2.1-or-later AND (Apache-2.0 AND LGPL-2.1-or-later) AND Apache-2.0, approved, #15077 maven/mavencentral/com.samskivert/jmustache/1.15, BSD-2-Clause, approved, clearlydefined @@ -138,80 +130,56 @@ maven/mavencentral/io.github.classgraph/classgraph/4.8.165, MIT, approved, CQ225 maven/mavencentral/io.micrometer/micrometer-commons/1.13.0, Apache-2.0 AND (Apache-2.0 AND MIT), approved, #14826 maven/mavencentral/io.micrometer/micrometer-core/1.13.0, Apache-2.0 AND (Apache-2.0 AND MIT), approved, #14827 maven/mavencentral/io.micrometer/micrometer-observation/1.13.0, Apache-2.0, approved, #14829 -maven/mavencentral/io.netty/netty-buffer/4.1.101.Final, Apache-2.0, approved, CQ21842 maven/mavencentral/io.netty/netty-buffer/4.1.107.Final, Apache-2.0, approved, CQ21842 maven/mavencentral/io.netty/netty-buffer/4.1.108.Final, Apache-2.0, approved, CQ21842 maven/mavencentral/io.netty/netty-buffer/4.1.86.Final, Apache-2.0, approved, CQ21842 -maven/mavencentral/io.netty/netty-codec-dns/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-dns/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-codec-http/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-codec-http2/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http2/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http2/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-http2/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-codec-socks/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-socks/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec-socks/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-codec/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-codec/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-common/4.1.101.Final, Apache-2.0 AND MIT AND CC0-1.0, approved, CQ21843 maven/mavencentral/io.netty/netty-common/4.1.107.Final, Apache-2.0 AND MIT AND CC0-1.0, approved, CQ21843 maven/mavencentral/io.netty/netty-common/4.1.108.Final, Apache-2.0 AND MIT AND CC0-1.0, approved, CQ21843 maven/mavencentral/io.netty/netty-common/4.1.86.Final, Apache-2.0 AND MIT AND CC0-1.0, approved, CQ21843 -maven/mavencentral/io.netty/netty-handler-proxy/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler-proxy/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler-proxy/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler-proxy/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-handler/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-handler/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-resolver-dns-classes-macos/4.1.101.Final, Apache-2.0, approved, #6367 maven/mavencentral/io.netty/netty-resolver-dns-classes-macos/4.1.107.Final, Apache-2.0, approved, #6367 -maven/mavencentral/io.netty/netty-resolver-dns-native-macos/4.1.101.Final, Apache-2.0, approved, #7004 maven/mavencentral/io.netty/netty-resolver-dns-native-macos/4.1.107.Final, Apache-2.0, approved, #7004 -maven/mavencentral/io.netty/netty-resolver-dns/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-resolver-dns/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-resolver/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-resolver/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-resolver/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-resolver/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-tcnative-boringssl-static/2.0.56.Final, Apache-2.0 OR LicenseRef-Public-Domain OR BSD-2-Clause OR MIT, approved, CQ15280 -maven/mavencentral/io.netty/netty-tcnative-boringssl-static/2.0.62.Final, Apache-2.0 OR LicenseRef-Public-Domain OR BSD-2-Clause OR MIT, approved, CQ15280 maven/mavencentral/io.netty/netty-tcnative-boringssl-static/2.0.65.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.56.Final, Apache-2.0, approved, clearlydefined -maven/mavencentral/io.netty/netty-tcnative-classes/2.0.62.Final, Apache-2.0, approved, clearlydefined maven/mavencentral/io.netty/netty-tcnative-classes/2.0.65.Final, Apache-2.0, approved, clearlydefined -maven/mavencentral/io.netty/netty-transport-classes-epoll/4.1.101.Final, Apache-2.0, approved, #6366 maven/mavencentral/io.netty/netty-transport-classes-epoll/4.1.108.Final, Apache-2.0, approved, #6366 -maven/mavencentral/io.netty/netty-transport-classes-kqueue/4.1.101.Final, Apache-2.0, approved, #4107 maven/mavencentral/io.netty/netty-transport-classes-kqueue/4.1.108.Final, Apache-2.0, approved, #4107 -maven/mavencentral/io.netty/netty-transport-native-epoll/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-epoll/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-epoll/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-transport-native-kqueue/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-kqueue/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport-native-unix-common/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 -maven/mavencentral/io.netty/netty-transport/4.1.101.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport/4.1.107.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport/4.1.108.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.netty/netty-transport/4.1.86.Final, Apache-2.0 AND BSD-3-Clause AND MIT, approved, CQ20926 maven/mavencentral/io.opentelemetry.instrumentation/opentelemetry-instrumentation-annotations/1.32.0, Apache-2.0, approved, #11684 maven/mavencentral/io.opentelemetry/opentelemetry-api/1.32.0, Apache-2.0, approved, #11682 maven/mavencentral/io.opentelemetry/opentelemetry-context/1.32.0, Apache-2.0, approved, #11683 -maven/mavencentral/io.projectreactor.netty/reactor-netty-core/1.0.40, Apache-2.0, approved, #9687 maven/mavencentral/io.projectreactor.netty/reactor-netty-core/1.0.43, Apache-2.0, approved, #9687 -maven/mavencentral/io.projectreactor.netty/reactor-netty-http/1.0.40, Apache-2.0, approved, #11661 maven/mavencentral/io.projectreactor.netty/reactor-netty-http/1.0.43, Apache-2.0, approved, #11661 -maven/mavencentral/io.projectreactor/reactor-core/3.4.34, Apache-2.0, approved, #7517 maven/mavencentral/io.projectreactor/reactor-core/3.4.36, Apache-2.0, approved, #7517 maven/mavencentral/io.prometheus/simpleclient/0.16.0, Apache-2.0, approved, clearlydefined maven/mavencentral/io.prometheus/simpleclient_common/0.16.0, Apache-2.0, approved, clearlydefined @@ -279,7 +247,6 @@ maven/mavencentral/net.java.dev.jna/jna/5.13.0, Apache-2.0 AND LGPL-2.1-or-later maven/mavencentral/net.javacrumbs.json-unit/json-unit-core/2.36.0, Apache-2.0, approved, clearlydefined maven/mavencentral/net.minidev/accessors-smart/2.4.7, Apache-2.0, approved, #7515 maven/mavencentral/net.minidev/accessors-smart/2.5.1, Apache-2.0, approved, clearlydefined -maven/mavencentral/net.minidev/json-smart/2.4.10, Apache-2.0, approved, #3288 maven/mavencentral/net.minidev/json-smart/2.4.7, Apache-2.0, approved, #3288 maven/mavencentral/net.minidev/json-smart/2.5.0, Apache-2.0, approved, clearlydefined maven/mavencentral/net.minidev/json-smart/2.5.1, Apache-2.0, approved, clearlydefined @@ -336,191 +303,211 @@ maven/mavencentral/org.codehaus.plexus/plexus-utils/3.1.1, , approved, CQ16492 maven/mavencentral/org.codehaus.plexus/plexus-utils/3.3.0, , approved, CQ21066 maven/mavencentral/org.codehaus.woodstox/stax2-api/4.2.2, BSD-2-Clause, approved, #2670 maven/mavencentral/org.eclipse.angus/angus-activation/1.0.0, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.angus -maven/mavencentral/org.eclipse.edc.aws/aws-s3-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.aws/aws-s3-test/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.aws/data-plane-aws-s3/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.azure/azure-blob-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.azure/azure-test/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.azure/data-plane-azure-storage/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc.azure/vault-azure/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/accesstoken-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/accesstokendata-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/api-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/api-observability/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/asset-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/asset-index-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.aws/aws-s3-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.aws/aws-s3-test/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.aws/data-plane-aws-s3/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.azure/azure-blob-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.azure/azure-test/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.azure/data-plane-azure-storage/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc.azure/vault-azure/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/accesstoken-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/accesstokendata-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/api-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/api-observability/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/asset-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/asset-index-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/asset-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/asset-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/auth-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/auth-tokenbased/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/autodoc-processor/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/boot-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/auth-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/auth-tokenbased/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/autodoc-processor/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/boot-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/boot-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/boot-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/boot/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/callback-event-dispatcher/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/callback-http-dispatcher/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/callback-static-endpoint/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/catalog-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/boot/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/callback-event-dispatcher/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/callback-http-dispatcher/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/callback-static-endpoint/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/catalog-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/catalog-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/catalog-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/configuration-filesystem/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/connector-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-agreement-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-definition-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-definition-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-negotiation-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/contract-negotiation-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/configuration-filesystem/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/connector-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-agreement-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-definition-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-definition-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-negotiation-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-negotiation-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/contract-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/contract-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-api-configuration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-aggregate-services/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-api-client-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-api-client/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-catalog/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-contract/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-policies-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-api-configuration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-aggregate-services/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-api-client-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-api-client/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-catalog/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-contract/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-policies-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/control-plane-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-transfer/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/control-plane-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-transfer/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/control-plane-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/core-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/core-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/credential-query-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/crypto-common-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-address-http-data-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-client-embedded/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-control-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-http-oauth2-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-http-oauth2/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-http-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-http/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-public-api-v2/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-selector-client/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-selector-control-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-selector-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-selector-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-self-registration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-signaling-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-signaling-client/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-signaling-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/credential-query-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/crypto-common-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-address-http-data-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-client-embedded/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-control-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-http-oauth2-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-http-oauth2/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-http-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-http/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-public-api-v2/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-selector-client/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-selector-control-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-selector-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-selector-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-self-registration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-signaling-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-signaling-client/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-signaling-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/data-plane-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/data-plane-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/data-plane-util/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/data-plane-util/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/did-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-http-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-http-dispatcher/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-catalog/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-http-api-configuration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-http-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-http-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-dispatcher/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-negotiation/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-dispatcher/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-transfer-process/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp-version-http-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/dsp/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/edr-index-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/edr-store-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/edr-store-receiver/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/edr-store-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/did-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-http-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-http-dispatcher/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-catalog/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-http-api-configuration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-http-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-http-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-http-dispatcher/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-negotiation/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-http-dispatcher/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-transfer-process/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp-version-http-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/dsp/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/edr-index-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/edr-store-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/edr-store-receiver/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/edr-store-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/http-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/http-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/http-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/http/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/iam-mock/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-did-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-did-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-did-web/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-did/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-keypairs/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-participants/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-hub-store-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-issuers-configuration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-service/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-client-configuration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-embedded/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-remote-client/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-remote-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-sts-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/identity-trust-transform/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jersey-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jersey-micrometer/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jersey-providers-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jetty-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jetty-micrometer/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-ld-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-ld-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-ld/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/json-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/junit-base/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/http-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/http/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/iam-mock/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-did-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-did-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-did-web/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-did/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-keypairs/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-participants/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-hub-store-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-issuers-configuration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-service/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-client-configuration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-embedded/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-remote-client/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-remote-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-sts-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/identity-trust-transform/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jersey-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jersey-micrometer/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jersey-providers-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jetty-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jetty-micrometer/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-ld-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-ld-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-ld/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/json-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/junit-base/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/junit/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/junit/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jws2020-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jwt-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/jwt-verifiable-credentials/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/keypair-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/keypair-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/keys-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/keys-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/ldp-verifiable-credentials/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/management-api-configuration/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/management-api-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/management-api-test-fixtures/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/management-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/micrometer-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/oauth2-client/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/oauth2-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/participant-context-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-definition-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-definition-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-engine-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jws2020-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jwt-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/jwt-verifiable-credentials/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/keypair-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/keypair-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/keys-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/keys-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/ldp-verifiable-credentials/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/management-api-configuration/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/management-api-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/management-api-test-fixtures/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/management-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/micrometer-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/oauth2-client/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/oauth2-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/participant-context-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-definition-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-definition-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-engine-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-engine-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/policy-engine-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-evaluator-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-evaluator-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-model/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/policy-model/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-monitor-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-monitor-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/policy-monitor-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-monitor-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-monitor-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-monitor-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/policy-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/policy-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/presentation-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/query-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/presentation-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/query-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/runtime-metamodel/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/runtime-metamodel/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/secrets-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/secrets-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/sql-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/sql-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/sql-lease/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/sql-pool-apache-commons/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/state-machine-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/store-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/token-core/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/token-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/sql-lease/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/sql-pool-apache-commons/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/state-machine-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/store-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/token-core/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/token-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transaction-datasource-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/transaction-datasource-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transaction-local/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transaction-local/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transaction-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/transaction-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-data-plane-signaling/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-data-plane-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-process-api/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-process-store-sql/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transfer-pull-http-dynamic-receiver/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-data-plane-signaling/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-data-plane-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-process-api/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-process-store-sql/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-pull-http-dynamic-receiver/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transfer-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/transfer-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transform-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/transform-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transform-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/transform-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/util-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/util-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/validator-data-address-http-data/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/validator-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/validator-data-address-http-data/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/validator-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/validator-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.edc/validator-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/vault-hashicorp/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/verifiable-credential-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/verifiable-credentials-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/verifiable-credentials/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/verifiable-presentation-lib/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc -maven/mavencentral/org.eclipse.edc/web-spi/0.7.1-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/vault-hashicorp/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/verifiable-credential-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/verifiable-credentials-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/verifiable-credentials/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/verifiable-presentation-lib/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc +maven/mavencentral/org.eclipse.edc/web-spi/0.7.1-20240610-SNAPSHOT, Apache-2.0, approved, technology.edc maven/mavencentral/org.eclipse.jetty.toolchain/jetty-jakarta-servlet-api/5.0.2, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty.toolchain/jetty-jakarta-websocket-api/2.0.0, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty.websocket/websocket-core-client/11.0.21, EPL-2.0 OR Apache-2.0, approved, rt.jetty @@ -654,7 +641,7 @@ maven/mavencentral/software.amazon.awssdk/http-auth-spi/2.25.66, Apache-2.0, app maven/mavencentral/software.amazon.awssdk/http-auth/2.25.66, Apache-2.0, approved, #13682 maven/mavencentral/software.amazon.awssdk/http-client-spi/2.25.64, Apache-2.0, approved, #13706 maven/mavencentral/software.amazon.awssdk/http-client-spi/2.25.66, Apache-2.0, approved, #13706 -maven/mavencentral/software.amazon.awssdk/iam/2.25.66, , restricted, clearlydefined +maven/mavencentral/software.amazon.awssdk/iam/2.25.66, Apache-2.0, approved, clearlydefined maven/mavencentral/software.amazon.awssdk/identity-spi/2.25.66, Apache-2.0, approved, #13685 maven/mavencentral/software.amazon.awssdk/json-utils/2.25.64, Apache-2.0, approved, #13698 maven/mavencentral/software.amazon.awssdk/json-utils/2.25.66, Apache-2.0, approved, #13698 @@ -670,7 +657,7 @@ maven/mavencentral/software.amazon.awssdk/s3/2.25.64, Apache-2.0, approved, #136 maven/mavencentral/software.amazon.awssdk/s3/2.25.66, Apache-2.0, approved, #13688 maven/mavencentral/software.amazon.awssdk/sdk-core/2.25.64, Apache-2.0, approved, #13700 maven/mavencentral/software.amazon.awssdk/sdk-core/2.25.66, Apache-2.0, approved, #13700 -maven/mavencentral/software.amazon.awssdk/sts/2.25.66, , restricted, clearlydefined +maven/mavencentral/software.amazon.awssdk/sts/2.25.66, Apache-2.0, approved, clearlydefined maven/mavencentral/software.amazon.awssdk/third-party-jackson-core/2.25.66, Apache-2.0, approved, #13703 maven/mavencentral/software.amazon.awssdk/utils/2.25.64, Apache-2.0, approved, #13689 maven/mavencentral/software.amazon.awssdk/utils/2.25.66, Apache-2.0, approved, #13689 diff --git a/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/ParticipantRuntime.java b/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/ParticipantRuntime.java index 9ba359c1e..24639addc 100644 --- a/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/ParticipantRuntime.java +++ b/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/ParticipantRuntime.java @@ -22,61 +22,32 @@ import com.nimbusds.jose.JOSEException; import com.nimbusds.jose.jwk.Curve; import com.nimbusds.jose.jwk.gen.ECKeyGenerator; -import org.eclipse.edc.boot.system.injection.InjectionContainer; -import org.eclipse.edc.junit.extensions.EdcRuntimeExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; +import org.eclipse.edc.junit.extensions.RuntimePerMethodExtension; import org.eclipse.edc.spi.security.Vault; -import org.eclipse.edc.spi.system.ServiceExtension; -import org.eclipse.edc.spi.system.ServiceExtensionContext; -import org.junit.jupiter.api.extension.AfterAllCallback; -import org.junit.jupiter.api.extension.BeforeAllCallback; import org.junit.jupiter.api.extension.ExtensionContext; -import java.util.List; import java.util.Map; -public class ParticipantRuntime extends EdcRuntimeExtension implements BeforeAllCallback, AfterAllCallback { +public class ParticipantRuntime extends RuntimePerMethodExtension { private final Map properties; - private DataWiper wiper; - - - public ParticipantRuntime(String moduleName, String runtimeName, Map properties) { - super(moduleName, runtimeName, properties); - this.properties = properties; - } public ParticipantRuntime(String runtimeName, Map properties, String... modules) { - super(runtimeName, properties, modules); + super(new EmbeddedRuntime(runtimeName, properties, modules)); this.properties = properties; } @Override public void beforeTestExecution(ExtensionContext extensionContext) { - //do nothing - we only want to start the runtime once - wiper.clearPersistence(); + registerConsumerPullKeys(properties); } @Override public void afterTestExecution(ExtensionContext context) { - } - - @Override - public void beforeAll(ExtensionContext context) throws Exception { - //only run this once - super.beforeTestExecution(context); - } - - @Override - public void afterAll(ExtensionContext context) throws Exception { - super.afterTestExecution(context); - } - - @Override - protected void bootExtensions(ServiceExtensionContext context, List> serviceExtensions) { - super.bootExtensions(context, serviceExtensions); - wiper = new DataWiper(context); - registerConsumerPullKeys(properties); + var wiper = new DataWiper(runtime.getContext()); + wiper.clearPersistence(); } private void registerConsumerPullKeys(Map properties) { @@ -85,7 +56,7 @@ private void registerConsumerPullKeys(Map properties) { if (privateAlias != null && publicAlias != null) { try { var ecKey = new ECKeyGenerator(Curve.P_256).keyID(publicAlias).generate(); - var vault = getContext().getService(Vault.class); + var vault = getService(Vault.class); vault.storeSecret(privateAlias, ecKey.toJSONString()); vault.storeSecret(publicAlias, ecKey.toPublicJWK().toJSONString()); } catch (JOSEException e) { diff --git a/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/Runtimes.java b/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/Runtimes.java index 6b265ddb4..3a7b6375f 100644 --- a/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/Runtimes.java +++ b/edc-tests/e2e-tests/src/test/java/org/eclipse/tractusx/edc/lifecycle/Runtimes.java @@ -24,8 +24,6 @@ public interface Runtimes { static ParticipantRuntime dimRuntime(String name, Map configuration) { - return new ParticipantRuntime(name, configuration, - ":edc-tests:runtime:iatp:runtime-memory-iatp-dim" - ); + return new ParticipantRuntime(name, configuration, ":edc-tests:runtime:iatp:runtime-memory-iatp-dim"); } } diff --git a/edc-tests/edc-controlplane/catalog-tests/src/test/java/org/eclipse/tractusx/edc/tests/catalog/CatalogTest.java b/edc-tests/edc-controlplane/catalog-tests/src/test/java/org/eclipse/tractusx/edc/tests/catalog/CatalogTest.java index da802cb99..6f0a04221 100644 --- a/edc-tests/edc-controlplane/catalog-tests/src/test/java/org/eclipse/tractusx/edc/tests/catalog/CatalogTest.java +++ b/edc-tests/edc-controlplane/catalog-tests/src/test/java/org/eclipse/tractusx/edc/tests/catalog/CatalogTest.java @@ -21,10 +21,9 @@ import org.eclipse.edc.junit.annotations.EndToEndTest; import org.eclipse.edc.junit.annotations.PostgresqlIntegrationTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.policy.model.Operator; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; -import org.eclipse.tractusx.edc.tests.runtimes.PgParticipantRuntime; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; @@ -213,10 +212,10 @@ void requestCatalog_of1000Assets_shouldContainAll() { class InMemory extends Tests { @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } @@ -225,10 +224,10 @@ class InMemory extends Tests { class Postgres extends Tests { @RegisterExtension - protected static final PgParticipantRuntime CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final PgParticipantRuntime PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } diff --git a/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/EdrCacheApiEndToEndTest.java b/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/EdrCacheApiEndToEndTest.java index f7dec1e3b..41097357e 100644 --- a/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/EdrCacheApiEndToEndTest.java +++ b/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/EdrCacheApiEndToEndTest.java @@ -35,10 +35,10 @@ import org.eclipse.edc.edr.spi.store.EndpointDataReferenceStore; import org.eclipse.edc.edr.spi.types.EndpointDataReferenceEntry; import org.eclipse.edc.junit.annotations.EndToEndTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.spi.types.domain.DataAddress; import org.eclipse.tractusx.edc.spi.tokenrefresh.dataplane.model.TokenResponse; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; @@ -63,6 +63,7 @@ import static org.eclipse.tractusx.edc.edr.spi.CoreConstants.EDR_PROPERTY_REFRESH_TOKEN; import static org.eclipse.tractusx.edc.tests.TestRuntimeConfiguration.CONSUMER_BPN; import static org.eclipse.tractusx.edc.tests.TestRuntimeConfiguration.CONSUMER_NAME; +import static org.eclipse.tractusx.edc.tests.runtimes.Runtimes.memoryRuntime; import static org.mockserver.integration.ClientAndServer.startClientAndServer; import static org.mockserver.matchers.Times.exactly; import static org.mockserver.model.HttpRequest.request; @@ -81,11 +82,7 @@ public class EdrCacheApiEndToEndTest { .id(CONSUMER_BPN) .build(); @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = new ParticipantRuntime( - ":edc-tests:runtime:runtime-memory", - CONSUMER.getName(), - CONSUMER.getId(), - with(CONSUMER.getConfiguration(), Map.of("edc.iam.issuer.id", "did:web:consumer"))); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getId(), with(CONSUMER.getConfiguration(), Map.of("edc.iam.issuer.id", "did:web:consumer"))); private final ObjectMapper mapper = new ObjectMapper(); private String refreshEndpoint; private String refreshAudience; diff --git a/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/NegotiateEdrTest.java b/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/NegotiateEdrTest.java index b798fbf01..608de68da 100644 --- a/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/NegotiateEdrTest.java +++ b/edc-tests/edc-controlplane/edr-api-tests/src/test/java/org/eclipse/tractusx/edc/tests/edrv2/NegotiateEdrTest.java @@ -31,13 +31,12 @@ import org.eclipse.edc.connector.controlplane.transfer.spi.event.TransferProcessStarted; import org.eclipse.edc.junit.annotations.EndToEndTest; import org.eclipse.edc.junit.annotations.PostgresqlIntegrationTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.policy.model.Operator; import org.eclipse.tractusx.edc.tests.helpers.EdrNegotiationHelperFunctions; import org.eclipse.tractusx.edc.tests.helpers.PolicyHelperFunctions; import org.eclipse.tractusx.edc.tests.helpers.ReceivedEvent; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; -import org.eclipse.tractusx.edc.tests.runtimes.PgParticipantRuntime; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; @@ -191,10 +190,10 @@ void teardown() throws IOException { class InMemory extends Tests { @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } @@ -203,10 +202,10 @@ class InMemory extends Tests { class Postgres extends Tests { @RegisterExtension - protected static final PgParticipantRuntime CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final PgParticipantRuntime PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } } diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxIatpParticipantBase.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxIatpParticipantBase.java index 69dfaf4d0..eb17e0667 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxIatpParticipantBase.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxIatpParticipantBase.java @@ -44,7 +44,7 @@ public Map iatpConfiguration(TractusxIatpParticipantBase... othe put("edc.iam.sts.oauth.client.id", stsClientId); put("edc.iam.sts.oauth.client.secret.alias", "client_secret_alias"); put("edc.ih.iam.id", getDid()); - put("tx.vault.seed.secrets", "client_secret_alias:%s".formatted(stsClientSecret)); + put("tx.edc.vault.seed.secrets", "client_secret_alias:%s".formatted(stsClientSecret)); put("edc.ih.iam.publickey.alias", getFullKeyId()); put("edc.agent.identity.key", "client_id"); put("edc.iam.trusted-issuer.issuer.id", trustedIssuer); diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxParticipantBase.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxParticipantBase.java index ce7745c71..0d260e475 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxParticipantBase.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/participant/TractusxParticipantBase.java @@ -55,7 +55,7 @@ public abstract class TractusxParticipantBase extends IdentityParticipant { public static final String MANAGEMENT_API_KEY = "testkey"; - public static final Duration ASYNC_TIMEOUT = ofSeconds(60); + public static final Duration ASYNC_TIMEOUT = ofSeconds(120); public static final Duration ASYNC_POLL_INTERVAL = ofSeconds(1); private static final String CONSUMER_PROXY_API_KEY = "consumerProxyKey"; protected final URI dataPlaneProxy = URI.create("http://localhost:" + getFreePort()); @@ -198,7 +198,7 @@ public ValidatableResponse getCatalog(TractusxParticipantBase provider) { .contentType(JSON) .when() .body(requestBodyBuilder.build()) - .post("/v2/catalog/request") + .post("/v3/catalog/request") .then(); } diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/BeforeInitCallback.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/BeforeInitCallback.java index 1fe184957..a4633ae15 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/BeforeInitCallback.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/BeforeInitCallback.java @@ -19,14 +19,15 @@ package org.eclipse.tractusx.edc.tests.runtimes; -import org.eclipse.edc.junit.extensions.EdcExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; +import org.eclipse.edc.junit.extensions.RuntimeExtension; /** - * Callback invoked before the runtime boots with extensions of {@link EdcExtension}. This will allow injecting - * custom mock services directly in the tests rather than extending the {@link EdcExtension} with custom mocks + * Callback invoked before the runtime boots with extensions of {@link RuntimeExtension}. This will allow injecting + * custom mock services directly in the tests rather than extending the {@link RuntimeExtension} with custom mocks */ @FunctionalInterface public interface BeforeInitCallback { - void beforeInit(EdcExtension runtime); + void beforeInit(EmbeddedRuntime runtime); } diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/DataWiper.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/DataWiper.java index e5503761e..ee117bb5b 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/DataWiper.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/DataWiper.java @@ -35,7 +35,7 @@ */ public class DataWiper { - private final ServiceExtensionContext context; + protected final ServiceExtensionContext context; public DataWiper(ServiceExtensionContext context) { this.context = context; diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntime.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntime.java index 9207153fe..c7f1b0190 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntime.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntime.java @@ -27,7 +27,7 @@ import org.eclipse.edc.iam.did.spi.resolution.DidPublicKeyResolver; import org.eclipse.edc.iam.identitytrust.spi.SecureTokenService; import org.eclipse.edc.iam.identitytrust.sts.embedded.EmbeddedSecureTokenService; -import org.eclipse.edc.junit.extensions.EdcRuntimeExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; import org.eclipse.edc.spi.iam.AudienceResolver; import org.eclipse.edc.spi.iam.IdentityService; import org.eclipse.edc.spi.result.Result; @@ -38,17 +38,16 @@ import org.eclipse.edc.token.JwtGenerationService; import org.eclipse.tractusx.edc.spi.identity.mapper.BdrsClient; import org.eclipse.tractusx.edc.tests.MockBpnIdentityService; -import org.junit.jupiter.api.extension.AfterAllCallback; -import org.junit.jupiter.api.extension.BeforeAllCallback; -import org.junit.jupiter.api.extension.ExtensionContext; import java.time.Clock; import java.time.Duration; import java.util.List; import java.util.Map; - -public class ParticipantRuntime extends EdcRuntimeExtension implements BeforeAllCallback, AfterAllCallback { +/** + * Extends the {@link EmbeddedRuntime} adding a key pair to the runtime as well as adding a facility to purge the database ({@link DataWiper}). + */ +public class ParticipantRuntime extends EmbeddedRuntime { private final Map properties; private final ECKey runtimeKeyPair; @@ -59,7 +58,7 @@ public ParticipantRuntime(String moduleName, String runtimeName, String bpn, Map } public ParticipantRuntime(String moduleName, String runtimeName, String bpn, Map properties, BeforeInitCallback beforeInitCallback) { - super(moduleName, runtimeName, properties); + super(runtimeName, properties, moduleName); this.properties = properties; this.registerServiceMock(IdentityService.class, new MockBpnIdentityService(bpn)); this.registerServiceMock(AudienceResolver.class, RemoteMessage::getCounterPartyAddress); @@ -81,25 +80,8 @@ public ParticipantRuntime(String moduleName, String runtimeName, String bpn, Map } } - @Override - public void beforeTestExecution(ExtensionContext extensionContext) { - //do nothing - we only want to start the runtime once - wiper.clearPersistence(); - } - - @Override - public void afterTestExecution(ExtensionContext context) { - } - - @Override - public void beforeAll(ExtensionContext context) throws Exception { - //only run this once - super.beforeTestExecution(context); - } - - @Override - public void afterAll(ExtensionContext context) throws Exception { - super.afterTestExecution(context); + public DataWiper getWiper() { + return wiper; } @Override diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntimeExtension.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntimeExtension.java new file mode 100644 index 000000000..3931f00bb --- /dev/null +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/ParticipantRuntimeExtension.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2024 Bayerische Motoren Werke Aktiengesellschaft + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Apache License, Version 2.0 which is available at + * https://www.apache.org/licenses/LICENSE-2.0. + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.eclipse.tractusx.edc.tests.runtimes; + +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; +import org.eclipse.edc.junit.extensions.RuntimePerClassExtension; +import org.junit.jupiter.api.extension.AfterEachCallback; +import org.junit.jupiter.api.extension.ExtensionContext; + +import java.util.Map; + +/** + * Cleans up the database after every test to create a clean slate. This is faster than using a {@link org.eclipse.edc.junit.extensions.RuntimePerMethodExtension}, + * especially with postgres + */ +public class ParticipantRuntimeExtension extends RuntimePerClassExtension implements AfterEachCallback { + + public ParticipantRuntimeExtension(String moduleName, String runtimeName, String bpn, Map properties, BeforeInitCallback beforeInitCallback) { + super(new ParticipantRuntime(moduleName, runtimeName, bpn, properties)); + + if (beforeInitCallback != null) { + beforeInitCallback.beforeInit(runtime); + } + } + + public ParticipantRuntimeExtension(EmbeddedRuntime embeddedRuntime) { + super(embeddedRuntime); + } + + @Override + public void afterEach(ExtensionContext extensionContext) { + ((ParticipantRuntime) runtime).getWiper().clearPersistence(); + } +} diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgParticipantRuntime.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgParticipantRuntime.java index cd1a396a0..88855d876 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgParticipantRuntime.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgParticipantRuntime.java @@ -19,98 +19,19 @@ package org.eclipse.tractusx.edc.tests.runtimes; -import org.eclipse.edc.boot.system.injection.InjectionContainer; import org.eclipse.edc.boot.vault.InMemoryVault; import org.eclipse.edc.spi.monitor.ConsoleMonitor; import org.eclipse.edc.spi.monitor.Monitor; import org.eclipse.edc.spi.result.Result; import org.eclipse.edc.spi.security.Vault; -import org.eclipse.edc.spi.system.ServiceExtension; -import org.eclipse.edc.spi.system.ServiceExtensionContext; -import org.eclipse.edc.sql.testfixtures.PostgresqlLocalInstance; -import org.junit.jupiter.api.extension.AfterAllCallback; -import org.junit.jupiter.api.extension.BeforeAllCallback; -import org.junit.jupiter.api.extension.ExtensionContext; -import org.testcontainers.containers.PostgreSQLContainer; -import org.testcontainers.containers.wait.strategy.Wait; -import java.util.HashMap; -import java.util.List; import java.util.Map; -import static java.lang.String.format; -import static org.eclipse.tractusx.edc.tests.TestRuntimeConfiguration.DB_SCHEMA_NAME; - -public class PgParticipantRuntime extends ParticipantRuntime implements AfterAllCallback, BeforeAllCallback { - - private static final String POSTGRES_IMAGE_NAME = "postgres:16.2"; - private static final String USER = "postgres"; - private static final String PASSWORD = "password"; - private static final List DATASOURCES = List.of("asset", "contractdefinition", - "contractnegotiation", "policy", "transferprocess", "bpn", - "policy-monitor", "edr", "dataplane", "accesstokendata"); - private final String dbName; - public PostgreSQLContainer postgreSqlContainer; +class PgParticipantRuntime extends ParticipantRuntime { public PgParticipantRuntime(String moduleName, String runtimeName, String bpn, Map properties) { super(moduleName, runtimeName, bpn, properties); - this.dbName = runtimeName.toLowerCase(); mockVault(); - - postgreSqlContainer = new PostgreSQLContainer<>(POSTGRES_IMAGE_NAME) - .withLabel("runtime", dbName) - .withExposedPorts(5432) - .withUsername(USER) - .withPassword(PASSWORD) - .withDatabaseName(dbName); - } - - @Override - public void beforeAll(ExtensionContext context) throws Exception { - postgreSqlContainer.start(); - postgreSqlContainer.waitingFor(Wait.forHealthcheck()); - var config = postgresqlConfiguration(dbName); - config.forEach(System::setProperty); - super.beforeAll(context); - } - - @Override - public void afterAll(ExtensionContext context) throws Exception { - super.afterAll(context); - postgreSqlContainer.stop(); - postgreSqlContainer.close(); - } - - @Override - protected void bootExtensions(ServiceExtensionContext context, List> serviceExtensions) { - PostgresqlLocalInstance helper = new PostgresqlLocalInstance(postgreSqlContainer.getUsername(), postgreSqlContainer.getPassword(), baseJdbcUrl(), postgreSqlContainer.getDatabaseName()); - helper.createDatabase(); - super.bootExtensions(context, serviceExtensions); - } - - public Map postgresqlConfiguration(String name) { - var jdbcUrl = jdbcUrl(name); - return new HashMap<>() { - { - DATASOURCES.forEach(context -> { - var group = "edc.datasource." + context; - put(group + ".name", context); - put(group + ".url", jdbcUrl); - put(group + ".user", USER); - put(group + ".password", PASSWORD); - }); - // use non-default schema name to test usage of non-default schema - put("org.eclipse.tractusx.edc.postgresql.migration.schema", DB_SCHEMA_NAME); - } - }; - } - - public String jdbcUrl(String name) { - return baseJdbcUrl() + name + "?currentSchema=" + DB_SCHEMA_NAME; - } - - public String baseJdbcUrl() { - return format("jdbc:postgresql://%s:%s/", postgreSqlContainer.getHost(), postgreSqlContainer.getFirstMappedPort()); } protected void mockVault() { diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgRuntimeExtension.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgRuntimeExtension.java new file mode 100644 index 000000000..6472aebee --- /dev/null +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/PgRuntimeExtension.java @@ -0,0 +1,101 @@ +/* + * Copyright (c) 2024 Bayerische Motoren Werke Aktiengesellschaft + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Apache License, Version 2.0 which is available at + * https://www.apache.org/licenses/LICENSE-2.0. + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.eclipse.tractusx.edc.tests.runtimes; + +import org.eclipse.edc.sql.testfixtures.PostgresqlLocalInstance; +import org.junit.jupiter.api.extension.ExtensionContext; +import org.testcontainers.containers.PostgreSQLContainer; +import org.testcontainers.containers.wait.strategy.Wait; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import static java.lang.String.format; +import static org.eclipse.tractusx.edc.tests.TestRuntimeConfiguration.DB_SCHEMA_NAME; + +/** + * Instantiates the Postgres docker container and configures the runtime accordingly + */ +public class PgRuntimeExtension extends ParticipantRuntimeExtension { + private static final String POSTGRES_IMAGE_NAME = "postgres:16.2"; + private static final String USER = "postgres"; + private static final String PASSWORD = "password"; + private static final List DATASOURCES = List.of("asset", "contractdefinition", + "contractnegotiation", "policy", "transferprocess", "bpn", + "policy-monitor", "edr", "dataplane", "accesstokendata"); + private final PostgreSQLContainer postgreSqlContainer; + private final String dbName; + + public PgRuntimeExtension(String moduleName, String runtimeName, String bpn, Map properties) { + super(new ParticipantRuntime(moduleName, runtimeName, bpn, properties)); + this.dbName = runtimeName.toLowerCase(); + postgreSqlContainer = new PostgreSQLContainer<>(POSTGRES_IMAGE_NAME) + .withLabel("runtime", dbName) + .withExposedPorts(5432) + .withUsername(USER) + .withPassword(PASSWORD) + .withDatabaseName(dbName); + } + + @Override + public void beforeAll(ExtensionContext context) { + + postgreSqlContainer.start(); + postgreSqlContainer.waitingFor(Wait.forHealthcheck()); + var config = postgresqlConfiguration(dbName); + config.forEach(System::setProperty); + PostgresqlLocalInstance helper = new PostgresqlLocalInstance(postgreSqlContainer.getUsername(), postgreSqlContainer.getPassword(), baseJdbcUrl(), postgreSqlContainer.getDatabaseName()); + helper.createDatabase(); + super.beforeAll(context); + } + + @Override + public void afterAll(ExtensionContext context) { + super.afterAll(context); + postgreSqlContainer.stop(); + postgreSqlContainer.close(); + } + + public Map postgresqlConfiguration(String name) { + var jdbcUrl = jdbcUrl(name); + return new HashMap<>() { + { + DATASOURCES.forEach(context -> { + var group = "edc.datasource." + context; + put(group + ".name", context); + put(group + ".url", jdbcUrl); + put(group + ".user", USER); + put(group + ".password", PASSWORD); + }); + // use non-default schema name to test usage of non-default schema + put("org.eclipse.tractusx.edc.postgresql.migration.schema", DB_SCHEMA_NAME); + } + }; + } + + public String jdbcUrl(String name) { + return baseJdbcUrl() + name + "?currentSchema=" + DB_SCHEMA_NAME; + } + + public String baseJdbcUrl() { + return format("jdbc:postgresql://%s:%s/", postgreSqlContainer.getHost(), postgreSqlContainer.getFirstMappedPort()); + } +} diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/Runtimes.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/Runtimes.java index a033ed718..9ba5f7ab0 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/Runtimes.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/runtimes/Runtimes.java @@ -19,19 +19,21 @@ package org.eclipse.tractusx.edc.tests.runtimes; +import org.eclipse.edc.junit.extensions.RuntimeExtension; + import java.util.Map; public interface Runtimes { - static ParticipantRuntime memoryRuntime(String runtimeName, String bpn, Map properties) { + static RuntimeExtension memoryRuntime(String runtimeName, String bpn, Map properties) { return memoryRuntime(runtimeName, bpn, properties, null); } - static ParticipantRuntime memoryRuntime(String runtimeName, String bpn, Map properties, BeforeInitCallback callback) { - return new ParticipantRuntime(":edc-tests:runtime:runtime-memory", runtimeName, bpn, properties, callback); + static RuntimeExtension memoryRuntime(String runtimeName, String bpn, Map properties, BeforeInitCallback callback) { + return new ParticipantRuntimeExtension(":edc-tests:runtime:runtime-memory", runtimeName, bpn, properties, callback); } - static PgParticipantRuntime pgRuntime(String runtimeName, String bpn, Map properties) { - return new PgParticipantRuntime(":edc-tests:runtime:runtime-postgresql", runtimeName, bpn, properties); + static RuntimeExtension pgRuntime(String runtimeName, String bpn, Map properties) { + return new PgRuntimeExtension(":edc-tests:runtime:runtime-postgresql", runtimeName, bpn, properties); } } diff --git a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/transfer/HttpConsumerPullBaseTest.java b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/transfer/HttpConsumerPullBaseTest.java index f258cf7c4..6f56156ba 100644 --- a/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/transfer/HttpConsumerPullBaseTest.java +++ b/edc-tests/edc-controlplane/fixtures/src/testFixtures/java/org/eclipse/tractusx/edc/tests/transfer/HttpConsumerPullBaseTest.java @@ -51,7 +51,6 @@ public abstract class HttpConsumerPullBaseTest implements ParticipantAwareTest { protected String privateBackendUrl; - @BeforeEach void setup() { server = ClientAndServer.startClientAndServer(MOCK_BACKEND_REMOTE_HOST, getFreePort()); diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/AbstractIatpConsumerPullTest.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/AbstractIatpConsumerPullTest.java index ab98a284d..45551ac38 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/AbstractIatpConsumerPullTest.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/AbstractIatpConsumerPullTest.java @@ -29,6 +29,7 @@ import org.eclipse.edc.identityhub.spi.store.CredentialStore; import org.eclipse.edc.identityhub.spi.verifiablecredentials.model.VerifiableCredentialResource; import org.eclipse.edc.jsonld.spi.JsonLd; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.policy.model.Operator; import org.eclipse.edc.spi.query.Criterion; import org.eclipse.edc.spi.query.QuerySpec; @@ -37,7 +38,6 @@ import org.eclipse.tractusx.edc.tests.transfer.iatp.harness.IatpParticipant; import org.eclipse.tractusx.edc.tests.transfer.iatp.harness.StatusList2021; import org.eclipse.tractusx.edc.tests.transfer.iatp.harness.StsParticipant; -import org.eclipse.tractusx.edc.tests.transfer.iatp.runtime.IatpParticipantRuntime; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; @@ -209,7 +209,6 @@ void transferData_whenContractPolicyNotFulfilled(JsonObject contractPolicy, Stri void catalogRequest_whenCredentialExpired() { //update the membership credential to an expirationDate that is in the past var store = consumerRuntime().getService(CredentialStore.class); - var jsonLd = consumerRuntime().getService(JsonLd.class); var existingCred = store.query(QuerySpec.Builder.newInstance().filter(new Criterion("verifiableCredential.credential.type", "contains", "MembershipCredential")).build()) .orElseThrow(f -> new RuntimeException(f.getFailureDetail())) @@ -271,10 +270,10 @@ void catalogRequest_whenCredentialRevoked() { .id(existingCred.getVerifiableCredential().credential().getId()) .types(existingCred.getVerifiableCredential().credential().getType()) .credentialSubjects(existingCred.getVerifiableCredential().credential().getCredentialSubject()) - .credentialStatus(new CredentialStatus("https://localhost:%s/status/list/7#12345".formatted(port), "StatusList2021", + .credentialStatus(new CredentialStatus("http://localhost:%s/status/list/7#12345".formatted(port), "StatusList2021", Map.of("statusPurpose", "revocation", "statusListIndex", "12345", - "statusListCredential", "https://localhost:%d/status/list/7".formatted(port) + "statusListCredential", "http://localhost:%d/status/list/7".formatted(port) ) )) .issuer(existingCred.getVerifiableCredential().credential().getIssuer()) @@ -324,9 +323,9 @@ protected JsonObject createContractPolicy(String bpn) { return frameworkPolicy(Map.of(CX_CREDENTIAL_NS + "Membership", "active")); } - protected abstract IatpParticipantRuntime consumerRuntime(); + protected abstract RuntimeExtension consumerRuntime(); - protected abstract IatpParticipantRuntime providerRuntime(); + protected abstract RuntimeExtension providerRuntime(); private static class ValidContractPolicyProvider implements ArgumentsProvider { @Override diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/CredentialSpoofTest.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/CredentialSpoofTest.java index a16e7cf2e..1718d1985 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/CredentialSpoofTest.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/CredentialSpoofTest.java @@ -28,14 +28,13 @@ import org.eclipse.edc.identityhub.spi.verifiablecredentials.model.VerifiableCredentialResource; import org.eclipse.edc.jsonld.spi.JsonLd; import org.eclipse.edc.junit.annotations.EndToEndTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.spi.EdcException; import org.eclipse.edc.spi.query.QuerySpec; import org.eclipse.edc.spi.result.Result; import org.eclipse.edc.transform.spi.TypeTransformerRegistry; import org.eclipse.tractusx.edc.tests.transfer.iatp.harness.IatpParticipant; -import org.eclipse.tractusx.edc.tests.transfer.iatp.runtime.IatpParticipantRuntime; import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; @@ -74,33 +73,16 @@ public class CredentialSpoofTest implements IatpParticipants { .build(); @RegisterExtension - protected static final IatpParticipantRuntime MALICIOUS_ACTOR_RUNTIME = iatpRuntime(MALICIOUS_ACTOR.getName(), MALICIOUS_ACTOR.iatpConfiguration(PROVIDER, CONSUMER), MALICIOUS_ACTOR.getKeyPair()); + protected static final RuntimeExtension MALICIOUS_ACTOR_RUNTIME = iatpRuntime(MALICIOUS_ACTOR.getName(), MALICIOUS_ACTOR.iatpConfiguration(PROVIDER, CONSUMER), MALICIOUS_ACTOR.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime CONSUMER_RUNTIME = iatpRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER, MALICIOUS_ACTOR), CONSUMER.getKeyPair()); + protected static final RuntimeExtension CONSUMER_RUNTIME = iatpRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER, MALICIOUS_ACTOR), CONSUMER.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime PROVIDER_RUNTIME = iatpRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER, MALICIOUS_ACTOR), PROVIDER.getKeyPair()); + protected static final RuntimeExtension PROVIDER_RUNTIME = iatpRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER, MALICIOUS_ACTOR), PROVIDER.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime STS_RUNTIME = stsRuntime(STS.getName(), STS.stsConfiguration(CONSUMER, PROVIDER, MALICIOUS_ACTOR), STS.getKeyPair()); + protected static final RuntimeExtension STS_RUNTIME = stsRuntime(STS.getName(), STS.stsConfiguration(CONSUMER, PROVIDER, MALICIOUS_ACTOR), STS.getKeyPair()); private static final Integer MOCKED_CS_SERVICE_PORT = getFreePort(); protected ClientAndServer server; - - @BeforeAll - static void prepare() { - - // create the DIDs cache - var dids = new HashMap(); - dids.put(DATASPACE_ISSUER_PARTICIPANT.didUrl(), DATASPACE_ISSUER_PARTICIPANT.didDocument()); - dids.put(CONSUMER.getDid(), CONSUMER.getDidDocument()); - dids.put(PROVIDER.getDid(), PROVIDER.getDidDocument()); - dids.put(MALICIOUS_ACTOR.getDid(), maliciousActorDidDocument(MALICIOUS_ACTOR.getDidDocument())); - - configureParticipant(DATASPACE_ISSUER_PARTICIPANT, CONSUMER, CONSUMER_RUNTIME, dids, STS_RUNTIME); - configureParticipant(DATASPACE_ISSUER_PARTICIPANT, PROVIDER, PROVIDER_RUNTIME, dids, STS_RUNTIME); - configureParticipant(DATASPACE_ISSUER_PARTICIPANT, MALICIOUS_ACTOR, MALICIOUS_ACTOR_RUNTIME, dids, STS_RUNTIME); - - } - private static DidDocument maliciousActorDidDocument(DidDocument didDocument) { var service = new Service(); service.setId("#credential-service"); @@ -116,6 +98,17 @@ private static DidDocument maliciousActorDidDocument(DidDocument didDocument) { @BeforeEach void setup() { server = ClientAndServer.startClientAndServer("localhost", getFreePort(), MOCKED_CS_SERVICE_PORT); + + // create the DIDs cache + var dids = new HashMap(); + dids.put(DATASPACE_ISSUER_PARTICIPANT.didUrl(), DATASPACE_ISSUER_PARTICIPANT.didDocument()); + dids.put(CONSUMER.getDid(), CONSUMER.getDidDocument()); + dids.put(PROVIDER.getDid(), PROVIDER.getDidDocument()); + dids.put(MALICIOUS_ACTOR.getDid(), maliciousActorDidDocument(MALICIOUS_ACTOR.getDidDocument())); + + configureParticipant(DATASPACE_ISSUER_PARTICIPANT, CONSUMER, CONSUMER_RUNTIME, dids, STS_RUNTIME); + configureParticipant(DATASPACE_ISSUER_PARTICIPANT, PROVIDER, PROVIDER_RUNTIME, dids, STS_RUNTIME); + configureParticipant(DATASPACE_ISSUER_PARTICIPANT, MALICIOUS_ACTOR, MALICIOUS_ACTOR_RUNTIME, dids, STS_RUNTIME); } @AfterEach @@ -128,7 +121,6 @@ void shutdown() { void shouldNotImpersonateConsumer_withWrappedConsumerCredential() { var assetId = "api-asset-1"; - Map dataAddress = Map.of( "baseUrl", "http://mock", "type", "HttpData", @@ -149,7 +141,6 @@ void shouldNotImpersonateConsumer_withWrappedConsumerCredential() { MALICIOUS_ACTOR.getCatalog(PROVIDER) .log().ifError() .statusCode(not(200)); - } @Test diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/DimHttpConsumerPullTest.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/DimHttpConsumerPullTest.java index f1212a162..b4d98f912 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/DimHttpConsumerPullTest.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/DimHttpConsumerPullTest.java @@ -23,19 +23,19 @@ import org.eclipse.edc.iam.identitytrust.sts.embedded.EmbeddedSecureTokenService; import org.eclipse.edc.json.JacksonTypeManager; import org.eclipse.edc.junit.annotations.EndToEndTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.spi.types.TypeManager; import org.eclipse.edc.token.JwtGenerationService; import org.eclipse.edc.token.spi.TokenGenerationService; import org.eclipse.tractusx.edc.tests.transfer.iatp.dispatchers.DimDispatcher; import org.eclipse.tractusx.edc.tests.transfer.iatp.harness.IatpParticipant; -import org.eclipse.tractusx.edc.tests.transfer.iatp.runtime.IatpParticipantRuntime; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.RegisterExtension; import org.mockserver.integration.ClientAndServer; import org.mockserver.model.HttpResponse; -import java.io.IOException; import java.security.PrivateKey; import java.time.Clock; import java.util.HashMap; @@ -50,13 +50,31 @@ public class DimHttpConsumerPullTest extends AbstractIatpConsumerPullTest { @RegisterExtension - protected static final IatpParticipantRuntime CONSUMER_RUNTIME = dimRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER), CONSUMER.getKeyPair()); + protected static final RuntimeExtension CONSUMER_RUNTIME = dimRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER), CONSUMER.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime PROVIDER_RUNTIME = dimRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER), PROVIDER.getKeyPair()); + protected static final RuntimeExtension PROVIDER_RUNTIME = dimRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER), PROVIDER.getKeyPair()); private static final TypeManager MAPPER = new JacksonTypeManager(); private static ClientAndServer oauthServer; private static ClientAndServer dimServer; + @AfterAll + static void unwind() { + oauthServer.stop(); + dimServer.stop(); + } + + private static EmbeddedSecureTokenService tokenServiceFor(TokenGenerationService tokenGenerationService, IatpParticipant iatpDimParticipant) { + return new EmbeddedSecureTokenService(tokenGenerationService, privateKeySupplier(iatpDimParticipant), publicIdSupplier(iatpDimParticipant), Clock.systemUTC(), 60 * 60); + } + + private static Supplier privateKeySupplier(IatpParticipant participant) { + return () -> participant.getKeyPair().getPrivate(); + } + + private static Supplier publicIdSupplier(IatpParticipant participant) { + return participant::verificationId; + } + @BeforeAll static void prepare() { @@ -74,6 +92,11 @@ static void prepare() { dimServer = ClientAndServer.startClientAndServer(DIM_URI.getPort()); dimServer.when(request().withMethod("POST")).respond(new DimDispatcher(generatorServices)); + } + + // credentials etc get wiped after every, so the need to be created before every test + @BeforeEach + void setupParticipants() { // create the DIDs cache var dids = new HashMap(); dids.put(DATASPACE_ISSUER_PARTICIPANT.didUrl(), DATASPACE_ISSUER_PARTICIPANT.didDocument()); @@ -82,34 +105,15 @@ static void prepare() { configureParticipant(DATASPACE_ISSUER_PARTICIPANT, CONSUMER, CONSUMER_RUNTIME, dids, null); configureParticipant(DATASPACE_ISSUER_PARTICIPANT, PROVIDER, PROVIDER_RUNTIME, dids, null); - - } - - @AfterAll - static void unwind() throws IOException { - oauthServer.stop(); - dimServer.stop(); - } - - private static EmbeddedSecureTokenService tokenServiceFor(TokenGenerationService tokenGenerationService, IatpParticipant iatpDimParticipant) { - return new EmbeddedSecureTokenService(tokenGenerationService, privateKeySupplier(iatpDimParticipant), publicIdSupplier(iatpDimParticipant), Clock.systemUTC(), 60 * 60); - } - - private static Supplier privateKeySupplier(IatpParticipant participant) { - return () -> participant.getKeyPair().getPrivate(); - } - - private static Supplier publicIdSupplier(IatpParticipant participant) { - return participant::verificationId; } @Override - protected IatpParticipantRuntime consumerRuntime() { + protected RuntimeExtension consumerRuntime() { return CONSUMER_RUNTIME; } @Override - protected IatpParticipantRuntime providerRuntime() { - return CONSUMER_RUNTIME; + protected RuntimeExtension providerRuntime() { + return PROVIDER_RUNTIME; } } diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/StsHttpConsumerPullTest.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/StsHttpConsumerPullTest.java index b4a6665b9..70fe07775 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/StsHttpConsumerPullTest.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/StsHttpConsumerPullTest.java @@ -21,8 +21,8 @@ import org.eclipse.edc.iam.did.spi.document.DidDocument; import org.eclipse.edc.junit.annotations.EndToEndTest; -import org.eclipse.tractusx.edc.tests.transfer.iatp.runtime.IatpParticipantRuntime; -import org.junit.jupiter.api.BeforeAll; +import org.eclipse.edc.junit.extensions.RuntimeExtension; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.RegisterExtension; import java.util.HashMap; @@ -36,16 +36,16 @@ public class StsHttpConsumerPullTest extends AbstractIatpConsumerPullTest { @RegisterExtension - protected static final IatpParticipantRuntime CONSUMER_RUNTIME = iatpRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER), CONSUMER.getKeyPair()); + protected static final RuntimeExtension CONSUMER_RUNTIME = iatpRuntime(CONSUMER.getName(), CONSUMER.iatpConfiguration(PROVIDER), CONSUMER.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime PROVIDER_RUNTIME = iatpRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER), PROVIDER.getKeyPair()); + protected static final RuntimeExtension PROVIDER_RUNTIME = iatpRuntime(PROVIDER.getName(), PROVIDER.iatpConfiguration(CONSUMER), PROVIDER.getKeyPair()); @RegisterExtension - protected static final IatpParticipantRuntime STS_RUNTIME = stsRuntime(STS.getName(), STS.stsConfiguration(CONSUMER, PROVIDER), STS.getKeyPair()); + protected static final RuntimeExtension STS_RUNTIME = stsRuntime(STS.getName(), STS.stsConfiguration(CONSUMER, PROVIDER), STS.getKeyPair()); - @BeforeAll - static void prepare() { + @BeforeEach + void prepare() { // create the DIDs cache var dids = new HashMap(); @@ -59,12 +59,12 @@ static void prepare() { } @Override - protected IatpParticipantRuntime consumerRuntime() { + protected RuntimeExtension consumerRuntime() { return CONSUMER_RUNTIME; } @Override - protected IatpParticipantRuntime providerRuntime() { + protected RuntimeExtension providerRuntime() { return PROVIDER_RUNTIME; } } diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/harness/IatpHelperFunctions.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/harness/IatpHelperFunctions.java index 65eb18b3f..a186215b7 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/harness/IatpHelperFunctions.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/harness/IatpHelperFunctions.java @@ -31,7 +31,7 @@ import org.eclipse.edc.identityhub.spi.store.CredentialStore; import org.eclipse.edc.identityhub.spi.verifiablecredentials.model.VerifiableCredentialResource; import org.eclipse.edc.jsonld.spi.JsonLd; -import org.eclipse.edc.junit.extensions.EdcExtension; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.edc.spi.security.Vault; import java.time.Instant; @@ -89,14 +89,14 @@ private static JsonArray context() { .build(); } - public static void configureParticipant(DataspaceIssuer issuer, IatpParticipant participant, EdcExtension runtime, Map didDocs, EdcExtension stsRuntime) { + public static void configureParticipant(DataspaceIssuer issuer, IatpParticipant participant, RuntimeExtension runtimeExtension, Map didDocs, RuntimeExtension stsRuntimeExtension) { - if (stsRuntime != null) { - stsRuntime.getContext().getService(Vault.class).storeSecret(participant.verificationId(), participant.getPrivateKeyAsString()); + if (stsRuntimeExtension != null) { + stsRuntimeExtension.getService(Vault.class).storeSecret(participant.verificationId(), participant.getPrivateKeyAsString()); } - var participantContextService = runtime.getContext().getService(ParticipantContextService.class); - var vault = runtime.getContext().getService(Vault.class); - var didResolverRegistry = runtime.getContext().getService(DidResolverRegistry.class); + var participantContextService = runtimeExtension.getService(ParticipantContextService.class); + var vault = runtimeExtension.getService(Vault.class); + var didResolverRegistry = runtimeExtension.getService(DidResolverRegistry.class); var didResolver = new DidExampleResolver(); didDocs.forEach(didResolver::addCached); didResolverRegistry.register(didResolver); @@ -117,12 +117,12 @@ public static void configureParticipant(DataspaceIssuer issuer, IatpParticipant participantContextService.createParticipantContext(participantManifest); vault.storeSecret(participant.getPrivateKeyAlias(), participant.getPrivateKeyAsString()); - storeCredentials(issuer, participant, runtime); + storeCredentials(issuer, participant, runtimeExtension); } - private static void storeCredentials(DataspaceIssuer issuer, IatpParticipant participant, EdcExtension runtime) { - var credentialStore = runtime.getContext().getService(CredentialStore.class); - var jsonLd = runtime.getContext().getService(JsonLd.class); + private static void storeCredentials(DataspaceIssuer issuer, IatpParticipant participant, RuntimeExtension runtime) { + var credentialStore = runtime.getService(CredentialStore.class); + var jsonLd = runtime.getService(JsonLd.class); issueCredentials(issuer, participant, jsonLd).forEach(credentialStore::create); } diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/CredentialWiper.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/CredentialWiper.java new file mode 100644 index 000000000..0d249e4b0 --- /dev/null +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/CredentialWiper.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2024 Bayerische Motoren Werke Aktiengesellschaft + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Apache License, Version 2.0 which is available at + * https://www.apache.org/licenses/LICENSE-2.0. + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.eclipse.tractusx.edc.tests.transfer.iatp.runtime; + +import org.eclipse.edc.identityhub.spi.store.CredentialStore; +import org.eclipse.edc.spi.query.QuerySpec; +import org.eclipse.edc.spi.result.StoreResult; +import org.eclipse.edc.spi.system.ServiceExtensionContext; +import org.eclipse.tractusx.edc.tests.runtimes.DataWiper; + +/** + * Extends the functionality of the {@link DataWiper} by also deleting everything from the {@link CredentialStore} + */ +public class CredentialWiper extends DataWiper { + public CredentialWiper(ServiceExtensionContext context) { + super(context); + } + + @Override + public void clearPersistence() { + super.clearPersistence(); + if (context.hasService(CredentialStore.class)) { + var store = context.getService(CredentialStore.class); + var creds = store.query(QuerySpec.none()).orElseThrow(f -> new RuntimeException(f.getFailureDetail())); + var hasFailed = creds.stream().map(cred -> store.deleteById(cred.getId())) + .anyMatch(StoreResult::failed); + + if (hasFailed) { + throw new RuntimeException("Could not delete some credentials!"); + } + } + } +} diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntime.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntime.java index b94368687..934a6192b 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntime.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntime.java @@ -21,60 +21,40 @@ import com.nimbusds.jose.jwk.JWK; import org.eclipse.edc.boot.system.injection.InjectionContainer; -import org.eclipse.edc.junit.extensions.EdcRuntimeExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; import org.eclipse.edc.security.token.jwt.CryptoConverter; import org.eclipse.edc.spi.security.Vault; import org.eclipse.edc.spi.system.ServiceExtension; import org.eclipse.edc.spi.system.ServiceExtensionContext; import org.eclipse.tractusx.edc.spi.identity.mapper.BdrsClient; import org.eclipse.tractusx.edc.tests.runtimes.DataWiper; -import org.junit.jupiter.api.extension.AfterAllCallback; -import org.junit.jupiter.api.extension.BeforeAllCallback; -import org.junit.jupiter.api.extension.ExtensionContext; import java.security.KeyPair; import java.util.List; import java.util.Map; -public class IatpParticipantRuntime extends EdcRuntimeExtension implements BeforeAllCallback, AfterAllCallback { - +public class IatpParticipantRuntime extends EmbeddedRuntime { private final Map properties; private final JWK runtimeKeyPair; private DataWiper wiper; public IatpParticipantRuntime(String moduleName, String runtimeName, Map properties, KeyPair runtimeKeypair) { - super(moduleName, runtimeName, properties); + super(runtimeName, properties, moduleName); this.properties = properties; runtimeKeyPair = CryptoConverter.createJwk(runtimeKeypair); this.registerServiceMock(BdrsClient.class, (s) -> s); } - @Override - public void beforeTestExecution(ExtensionContext extensionContext) { - //do nothing - we only want to start the runtime once - wiper.clearPersistence(); - } - - @Override - public void afterTestExecution(ExtensionContext context) { - } - - @Override - public void beforeAll(ExtensionContext context) throws Exception { - //only run this once - super.beforeTestExecution(context); + public DataWiper getWiper() { + return wiper; } - @Override - public void afterAll(ExtensionContext context) throws Exception { - super.afterTestExecution(context); - } @Override protected void bootExtensions(ServiceExtensionContext context, List> serviceExtensions) { super.bootExtensions(context, serviceExtensions); - wiper = new DataWiper(context); + wiper = new CredentialWiper(getContext()); registerConsumerPullKeys(runtimeKeyPair); } @@ -83,7 +63,7 @@ private void registerConsumerPullKeys(JWK ecKey) { var publicAlias = properties.get("edc.transfer.proxy.token.verifier.publickey.alias"); if (privateAlias != null && publicAlias != null) { - var vault = getContext().getService(Vault.class); + var vault = getService(Vault.class); vault.storeSecret(privateAlias, ecKey.toJSONString()); vault.storeSecret(publicAlias, ecKey.toPublicJWK().toJSONString()); } diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntimeExtension.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntimeExtension.java new file mode 100644 index 000000000..90bd06232 --- /dev/null +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/IatpParticipantRuntimeExtension.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2024 Bayerische Motoren Werke Aktiengesellschaft + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Apache License, Version 2.0 which is available at + * https://www.apache.org/licenses/LICENSE-2.0. + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.eclipse.tractusx.edc.tests.transfer.iatp.runtime; + +import org.eclipse.edc.junit.extensions.RuntimePerClassExtension; +import org.junit.jupiter.api.extension.AfterEachCallback; +import org.junit.jupiter.api.extension.ExtensionContext; + +import java.security.KeyPair; +import java.util.Map; + +public class IatpParticipantRuntimeExtension extends RuntimePerClassExtension implements AfterEachCallback { + + public IatpParticipantRuntimeExtension(String modulename, String name, Map properties, KeyPair keyPair) { + super(new IatpParticipantRuntime(modulename, name, properties, keyPair)); + } + + @Override + public void afterEach(ExtensionContext extensionContext) { + ((IatpParticipantRuntime) runtime).getWiper().clearPersistence(); + } +} diff --git a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/Runtimes.java b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/Runtimes.java index 8dcce0fdc..32e353972 100644 --- a/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/Runtimes.java +++ b/edc-tests/edc-controlplane/iatp-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/iatp/runtime/Runtimes.java @@ -19,27 +19,29 @@ package org.eclipse.tractusx.edc.tests.transfer.iatp.runtime; +import org.eclipse.edc.junit.extensions.RuntimeExtension; + import java.security.KeyPair; import java.util.Map; public interface Runtimes { - static IatpParticipantRuntime dimRuntime(String name, Map properties, KeyPair keyPair) { - return new IatpParticipantRuntime(":edc-tests:runtime:iatp:runtime-memory-iatp-dim-ih", + static RuntimeExtension dimRuntime(String name, Map properties, KeyPair keyPair) { + return new IatpParticipantRuntimeExtension(":edc-tests:runtime:iatp:runtime-memory-iatp-dim-ih", name, properties, keyPair); } - static IatpParticipantRuntime iatpRuntime(String name, Map properties, KeyPair keyPair) { - return new IatpParticipantRuntime(":edc-tests:runtime:iatp:runtime-memory-iatp-ih", + static RuntimeExtension iatpRuntime(String name, Map properties, KeyPair keyPair) { + return new IatpParticipantRuntimeExtension(":edc-tests:runtime:iatp:runtime-memory-iatp-ih", name, properties, keyPair); } - static IatpParticipantRuntime stsRuntime(String name, Map properties, KeyPair keyPair) { - return new IatpParticipantRuntime( + static RuntimeExtension stsRuntime(String name, Map properties, KeyPair keyPair) { + return new IatpParticipantRuntimeExtension( ":edc-tests:runtime:iatp:runtime-memory-sts", name, properties, diff --git a/edc-tests/edc-controlplane/policy-tests/src/test/java/org/eclipse/tractusx/edc/tests/policy/PolicyMonitorEndToEndTest.java b/edc-tests/edc-controlplane/policy-tests/src/test/java/org/eclipse/tractusx/edc/tests/policy/PolicyMonitorEndToEndTest.java index d21e3d853..c7db01938 100644 --- a/edc-tests/edc-controlplane/policy-tests/src/test/java/org/eclipse/tractusx/edc/tests/policy/PolicyMonitorEndToEndTest.java +++ b/edc-tests/edc-controlplane/policy-tests/src/test/java/org/eclipse/tractusx/edc/tests/policy/PolicyMonitorEndToEndTest.java @@ -21,9 +21,8 @@ import org.eclipse.edc.junit.annotations.EndToEndTest; import org.eclipse.edc.junit.annotations.PostgresqlIntegrationTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; -import org.eclipse.tractusx.edc.tests.runtimes.PgParticipantRuntime; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -96,10 +95,10 @@ void shouldTerminateTransfer_whenPolicyExpires() { class InMemory extends Tests { @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } @@ -108,10 +107,10 @@ class InMemory extends Tests { class Postgres extends Tests { @RegisterExtension - protected static final PgParticipantRuntime CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final PgParticipantRuntime PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } } diff --git a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPullEndToEndTest.java b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPullEndToEndTest.java index d8be43e10..00dfda52a 100644 --- a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPullEndToEndTest.java +++ b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPullEndToEndTest.java @@ -23,10 +23,9 @@ import org.eclipse.edc.connector.controlplane.transfer.spi.types.TransferProcessStates; import org.eclipse.edc.junit.annotations.EndToEndTest; import org.eclipse.edc.junit.annotations.PostgresqlIntegrationTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.tractusx.edc.tests.participant.TractusxParticipantBase; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; -import org.eclipse.tractusx.edc.tests.runtimes.PgParticipantRuntime; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -176,10 +175,10 @@ protected JsonObject inForcePolicy() { class InMemory extends Tests { @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } @@ -188,10 +187,10 @@ class InMemory extends Tests { class Postgres extends Tests { @RegisterExtension - protected static final PgParticipantRuntime CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final PgParticipantRuntime PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } } diff --git a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPushEndToEndTest.java b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPushEndToEndTest.java index c316949ca..c57ce9470 100644 --- a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPushEndToEndTest.java +++ b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferPushEndToEndTest.java @@ -21,10 +21,9 @@ import org.eclipse.edc.junit.annotations.EndToEndTest; import org.eclipse.edc.junit.annotations.PostgresqlIntegrationTest; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.tractusx.edc.tests.participant.TractusxParticipantBase; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; -import org.eclipse.tractusx.edc.tests.runtimes.PgParticipantRuntime; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.extension.RegisterExtension; @@ -65,10 +64,10 @@ public TractusxParticipantBase consumer() { class InMemory extends Tests { @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } @@ -77,10 +76,10 @@ class InMemory extends Tests { class Postgres extends Tests { @RegisterExtension - protected static final PgParticipantRuntime CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = pgRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); @RegisterExtension - protected static final PgParticipantRuntime PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); + protected static final RuntimeExtension PROVIDER_RUNTIME = pgRuntime(PROVIDER.getName(), PROVIDER.getBpn(), PROVIDER.getConfiguration()); } } \ No newline at end of file diff --git a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferWithTokenRefreshTest.java b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferWithTokenRefreshTest.java index ac0bb9be5..2e6dc374a 100644 --- a/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferWithTokenRefreshTest.java +++ b/edc-tests/edc-controlplane/transfer-tests/src/test/java/org/eclipse/tractusx/edc/tests/transfer/TransferWithTokenRefreshTest.java @@ -22,10 +22,10 @@ import jakarta.json.JsonObject; import org.eclipse.edc.connector.controlplane.transfer.spi.types.TransferProcessStates; import org.eclipse.edc.junit.annotations.EndToEndTest; -import org.eclipse.edc.junit.extensions.EdcExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; +import org.eclipse.edc.junit.extensions.RuntimeExtension; import org.eclipse.tractusx.edc.spi.identity.mapper.BdrsClient; import org.eclipse.tractusx.edc.tests.participant.TransferParticipant; -import org.eclipse.tractusx.edc.tests.runtimes.ParticipantRuntime; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -72,11 +72,11 @@ public class TransferWithTokenRefreshTest { .build(); @RegisterExtension - protected static final ParticipantRuntime CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); + protected static final RuntimeExtension CONSUMER_RUNTIME = memoryRuntime(CONSUMER.getName(), CONSUMER.getBpn(), CONSUMER.getConfiguration()); private static final Long VERY_SHORT_TOKEN_EXPIRY = 3L; @RegisterExtension - protected static final ParticipantRuntime PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), forConfig(PROVIDER.getConfiguration()), TransferWithTokenRefreshTest::providerInitiator); + protected static final RuntimeExtension PROVIDER_RUNTIME = memoryRuntime(PROVIDER.getName(), PROVIDER.getBpn(), forConfig(PROVIDER.getConfiguration()), TransferWithTokenRefreshTest::providerInitiator); protected ClientAndServer server; private String privateBackendUrl; @@ -88,7 +88,7 @@ private static Map forConfig(Map originalConfig) return newConfig; } - private static void providerInitiator(EdcExtension runtime) { + private static void providerInitiator(EmbeddedRuntime runtime) { runtime.registerServiceMock(BdrsClient.class, (c) -> CONSUMER.getDid()); } diff --git a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/AzureToAzureTest.java b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/AzureToAzureTest.java index dc2ac5cc2..6b7e11a39 100644 --- a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/AzureToAzureTest.java +++ b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/AzureToAzureTest.java @@ -23,6 +23,7 @@ import io.restassured.http.ContentType; import org.eclipse.edc.azure.testfixtures.annotations.AzureStorageIntegrationTest; import org.eclipse.edc.junit.testfixtures.TestUtils; +import org.eclipse.edc.spi.monitor.Monitor; import org.eclipse.edc.spi.types.domain.DataAddress; import org.eclipse.edc.spi.types.domain.transfer.DataFlowStartMessage; import org.junit.jupiter.api.BeforeEach; @@ -252,7 +253,7 @@ void transferFile_targetContainerNotExist_shouldFail() { await().pollInterval(Duration.ofSeconds(2)) .atMost(Duration.ofSeconds(10)) - .untilAsserted(() -> verify(DATAPLANE_RUNTIME.getContext().getMonitor()) + .untilAsserted(() -> verify(DATAPLANE_RUNTIME.getService(Monitor.class)) .severe(contains("Error creating blob %s on account %s".formatted(TESTFILE_NAME, AZBLOB_CONSUMER_ACCOUNT_NAME)), isA(IOException.class))); } diff --git a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/ParticipantRuntime.java b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/ParticipantRuntime.java index 855179918..137fa94c1 100644 --- a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/ParticipantRuntime.java +++ b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/ParticipantRuntime.java @@ -19,18 +19,14 @@ package org.eclipse.tractusx.edc.dataplane.transfer.test; -import org.eclipse.edc.boot.system.injection.InjectionContainer; import org.eclipse.edc.junit.extensions.EdcRuntimeExtension; import org.eclipse.edc.spi.monitor.ConsoleMonitor; import org.eclipse.edc.spi.monitor.Monitor; import org.eclipse.edc.spi.security.Vault; -import org.eclipse.edc.spi.system.ServiceExtension; -import org.eclipse.edc.spi.system.ServiceExtensionContext; import org.junit.jupiter.api.extension.AfterAllCallback; import org.junit.jupiter.api.extension.BeforeAllCallback; import org.junit.jupiter.api.extension.ExtensionContext; -import java.util.List; import java.util.Map; import static org.mockito.Mockito.spy; @@ -64,12 +60,8 @@ public void afterAll(ExtensionContext context) throws Exception { } public Vault getVault() { - return getContext().getService(Vault.class); + return getService(Vault.class); } - @Override - protected void bootExtensions(ServiceExtensionContext context, List> serviceExtensions) { - super.bootExtensions(context, serviceExtensions); - } } diff --git a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/S3ToS3Test.java b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/S3ToS3Test.java index 148e6de1a..87f9937e9 100644 --- a/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/S3ToS3Test.java +++ b/edc-tests/edc-dataplane/cloud-transfer-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/transfer/test/S3ToS3Test.java @@ -26,6 +26,7 @@ import org.eclipse.edc.aws.s3.S3ClientRequest; import org.eclipse.edc.aws.s3.testfixtures.annotations.AwsS3IntegrationTest; import org.eclipse.edc.junit.testfixtures.TestUtils; +import org.eclipse.edc.spi.monitor.Monitor; import org.eclipse.edc.spi.types.domain.DataAddress; import org.eclipse.edc.spi.types.domain.transfer.DataFlowStartMessage; import org.junit.jupiter.api.BeforeEach; @@ -223,7 +224,7 @@ void transferFile_targetContainerNotExist_shouldFail() { // wait until the data plane logs an exception that it cannot transfer the file await().pollInterval(Duration.ofSeconds(2)) .atMost(Duration.ofSeconds(10)) - .untilAsserted(() -> verify(DATAPLANE_RUNTIME.getContext().getMonitor()).severe(startsWith("Failed to upload the %s object: The specified bucket does not exist".formatted(TESTFILE_NAME)), + .untilAsserted(() -> verify(DATAPLANE_RUNTIME.getService(Monitor.class)).severe(startsWith("Failed to upload the %s object: The specified bucket does not exist".formatted(TESTFILE_NAME)), isA(NoSuchBucketException.class))); } diff --git a/edc-tests/edc-dataplane/edc-dataplane-tokenrefresh-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/tokenrefresh/e2e/DataPlaneTokenRefreshEndToEndTest.java b/edc-tests/edc-dataplane/edc-dataplane-tokenrefresh-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/tokenrefresh/e2e/DataPlaneTokenRefreshEndToEndTest.java index a13779681..51ef68a9e 100644 --- a/edc-tests/edc-dataplane/edc-dataplane-tokenrefresh-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/tokenrefresh/e2e/DataPlaneTokenRefreshEndToEndTest.java +++ b/edc-tests/edc-dataplane/edc-dataplane-tokenrefresh-tests/src/test/java/org/eclipse/tractusx/edc/dataplane/tokenrefresh/e2e/DataPlaneTokenRefreshEndToEndTest.java @@ -31,7 +31,9 @@ import org.eclipse.edc.connector.dataplane.spi.iam.DataPlaneAuthorizationService; import org.eclipse.edc.iam.did.spi.resolution.DidPublicKeyResolver; import org.eclipse.edc.junit.annotations.EndToEndTest; -import org.eclipse.edc.junit.extensions.EdcRuntimeExtension; +import org.eclipse.edc.junit.extensions.EmbeddedRuntime; +import org.eclipse.edc.junit.extensions.RuntimeExtension; +import org.eclipse.edc.junit.extensions.RuntimePerMethodExtension; import org.eclipse.edc.spi.result.Result; import org.eclipse.edc.spi.security.Vault; import org.eclipse.edc.spi.types.domain.DataAddress; @@ -60,21 +62,20 @@ @EndToEndTest public class DataPlaneTokenRefreshEndToEndTest { + public static final RuntimeConfig ARUNTIME_CONFIG = new RuntimeConfig(); public static final String CONSUMER_DID = "did:web:alice"; public static final String PROVIDER_DID = "did:web:bob"; public static final String PROVIDER_KEY_ID = PROVIDER_DID + "#key-1"; public static final String PROVIDER_KEY_ID_PUBLIC = PROVIDER_DID + "#key-1-public"; - public static final String CONSUMER_KEY_ID = CONSUMER_DID + "#cons-1"; - private static final RuntimeConfig RUNTIME_CONFIG = new RuntimeConfig(); - @RegisterExtension - private static final EdcRuntimeExtension DATAPLANE_RUNTIME = new EdcRuntimeExtension( - ":edc-tests:runtime:dataplane-cloud", - "Token-Refresh-Dataplane", - with(RUNTIME_CONFIG.baseConfig(), Map.of("edc.transfer.proxy.token.signer.privatekey.alias", PROVIDER_KEY_ID, - "edc.transfer.proxy.token.verifier.publickey.alias", PROVIDER_KEY_ID_PUBLIC)) - ); + private static final RuntimeExtension DATAPLANE_RUNTIME = new RuntimePerMethodExtension( + new EmbeddedRuntime("Token-Refresh-Dataplane", + with(ARUNTIME_CONFIG.baseConfig(), Map.of("edc.transfer.proxy.token.signer.privatekey.alias", PROVIDER_KEY_ID, + "edc.transfer.proxy.token.verifier.publickey.alias", PROVIDER_KEY_ID_PUBLIC)), + ":edc-tests:runtime:dataplane-cloud") + ); + public static final String CONSUMER_KEY_ID = CONSUMER_DID + "#cons-1"; private ECKey providerKey; private ECKey consumerKey; @@ -118,7 +119,7 @@ void refresh_success() { var accessToken = edr.getStringProperty(EDC_NAMESPACE + "authorization"); var authToken = createAuthToken(accessToken, consumerKey); - var tokenResponse = RUNTIME_CONFIG.getRefreshApi().baseRequest() + var tokenResponse = ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + authToken) @@ -147,7 +148,7 @@ void refresh_invalidRefreshToken(String invalidRefreshToken) { var accessToken = edr.getStringProperty(EDC_NAMESPACE + "authorization"); var authToken = createAuthToken(accessToken, consumerKey); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", invalidRefreshToken) .header(AUTHORIZATION, "Bearer " + authToken) @@ -171,7 +172,7 @@ void refresh_emptyAuthHeader() { var accessToken = edr.getStringProperty(EDC_NAMESPACE + "authorization"); // auth header is empty - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "") @@ -195,7 +196,7 @@ void refresh_missingAuthHeader() { var accessToken = edr.getStringProperty(EDC_NAMESPACE + "authorization"); // auth header is empty - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .post("/token") @@ -218,7 +219,7 @@ void refresh_spoofedAuthToken() throws JOSEException { var spoofedKey = new ECKeyGenerator(Curve.P_256).keyID(CONSUMER_KEY_ID).generate(); var authTokenWithSpoofedKey = createAuthToken(accessToken, spoofedKey); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + authTokenWithSpoofedKey) @@ -241,7 +242,7 @@ void refresh_withWrongRefreshToken() { var refreshToken = "invalid_refresh_token"; var accessToken = edr.getStringProperty(EDC_NAMESPACE + "authorization"); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + createAuthToken(accessToken, consumerKey)) @@ -274,7 +275,7 @@ void refresh_invalidAuthenticationToken_missingAccessToken() { .build(); var authToken = createJwt(consumerKey, claims); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + authToken) @@ -306,7 +307,7 @@ void refresh_invalidAuthenticationToken_missingAudience() { .build(); var authToken = createJwt(consumerKey, claims); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + authToken) @@ -343,7 +344,7 @@ void refresh_invalidTokenId() { var authToken = createJwt(consumerKey, claims); - RUNTIME_CONFIG.getRefreshApi().baseRequest() + ARUNTIME_CONFIG.getRefreshApi().baseRequest() .queryParam("grant_type", "refresh_token") .queryParam("refresh_token", refreshToken) .header(AUTHORIZATION, "Bearer " + authToken) @@ -355,7 +356,7 @@ void refresh_invalidTokenId() { } private void prepareDataplaneRuntime() { - var vault = DATAPLANE_RUNTIME.getContext().getService(Vault.class); + var vault = DATAPLANE_RUNTIME.getService(Vault.class); vault.storeSecret(PROVIDER_KEY_ID, providerKey.toJSONString()); vault.storeSecret(PROVIDER_KEY_ID_PUBLIC, providerKey.toPublicJWK().toJSONString()); } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 7902e1d36..f00b4fd36 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,7 +2,7 @@ format.version = "1.1" [versions] -edc = "0.7.1-SNAPSHOT" +edc = "0.7.1-20240610-SNAPSHOT" apache-sshd = "2.12.1" assertj = "3.26.0" awaitility = "4.2.1" diff --git a/samples/multi-tenancy/src/main/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntime.java b/samples/multi-tenancy/src/main/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntime.java index b4c8c0025..567433587 100644 --- a/samples/multi-tenancy/src/main/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntime.java +++ b/samples/multi-tenancy/src/main/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntime.java @@ -44,11 +44,11 @@ public class MultiTenantRuntime extends BaseRuntime { public static void main(String[] args) { var runtime = new MultiTenantRuntime(); - runtime.boot(); + runtime.boot(false); } @Override - public void boot() { + public void boot(boolean shutdownHook) { loadTenantsConfig().getConfig("edc.tenants").partition().forEach(this::bootTenant); } @@ -64,7 +64,7 @@ private void bootTenant(Config tenantConfig) { runtimeThread = new Thread(() -> { try { Thread.currentThread().setContextClassLoader(classLoader); - super.boot(); + super.boot(false); } catch (Exception e) { throw new EdcException(e); } diff --git a/samples/multi-tenancy/src/test/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntimeTest.java b/samples/multi-tenancy/src/test/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntimeTest.java index 2e9e1e9d4..8b4272de6 100644 --- a/samples/multi-tenancy/src/test/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntimeTest.java +++ b/samples/multi-tenancy/src/test/java/org/eclipse/tractusx/edc/samples/multitenancy/MultiTenantRuntimeTest.java @@ -45,7 +45,7 @@ class MultiTenantRuntimeTest { @Test void throwsExceptionIfNoTenantsPropertyProvided() { - assertThrows(EdcException.class, runtime::boot); + assertThrows(EdcException.class, () -> runtime.boot(false)); verify(monitor, never()).info(argThat(connectorIsReady())); } @@ -53,7 +53,7 @@ void throwsExceptionIfNoTenantsPropertyProvided() { void throwsExceptionIfTenantsFileDoesNotExist() { System.setProperty("edc.tenants.path", "unexistentfile"); - assertThrows(EdcException.class, runtime::boot); + assertThrows(EdcException.class, () -> runtime.boot(false)); verify(monitor, never()).info(argThat(connectorIsReady())); } @@ -61,7 +61,7 @@ void throwsExceptionIfTenantsFileDoesNotExist() { void threadForEveryTenant() { System.setProperty("edc.tenants.path", "./src/test/resources/tenants.properties"); - runtime.boot(); + runtime.boot(false); verify(monitor, times(2)).info(argThat(connectorIsReady())); } From 08803cbc6ef23092c88d95388eb20b09b10abdc9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 21:51:05 +0200 Subject: [PATCH 2/5] chore(deps): bump aws from 2.25.64 to 2.25.69 (#1351) Bumps `aws` from 2.25.64 to 2.25.69. Updates `software.amazon.awssdk:s3` from 2.25.64 to 2.25.69 Updates `software.amazon.awssdk:s3-transfer-manager` from 2.25.64 to 2.25.69 --- updated-dependencies: - dependency-name: software.amazon.awssdk:s3 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: software.amazon.awssdk:s3-transfer-manager dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f00b4fd36..40e8c6481 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -6,7 +6,7 @@ edc = "0.7.1-20240610-SNAPSHOT" apache-sshd = "2.12.1" assertj = "3.26.0" awaitility = "4.2.1" -aws = "2.25.64" +aws = "2.25.69" azure-identity = "1.12.1" bouncyCastle-jdk18on = "1.78.1" flyway = "10.13.0" From b893cedb2e903d3447a2207cd0f89d8a82d0ba34 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 22:01:05 +0200 Subject: [PATCH 3/5] chore(deps): bump aquasecurity/trivy-action from 0.21.0 to 0.22.0 (#1352) Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.21.0 to 0.22.0. - [Release notes](https://github.com/aquasecurity/trivy-action/releases) - [Commits](https://github.com/aquasecurity/trivy-action/compare/0.21.0...0.22.0) --- updated-dependencies: - dependency-name: aquasecurity/trivy-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/trivy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/trivy.yml b/.github/workflows/trivy.yml index bfd8d65c9..b9f02355a 100644 --- a/.github/workflows/trivy.yml +++ b/.github/workflows/trivy.yml @@ -58,7 +58,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Run Trivy vulnerability scanner in repo mode - uses: aquasecurity/trivy-action@0.21.0 + uses: aquasecurity/trivy-action@0.22.0 with: scan-type: "config" # ignore-unfixed: true @@ -102,7 +102,7 @@ jobs: ## the next two steps will only execute if the image exists check was successful - name: Run Trivy vulnerability scanner if: success() && steps.imageCheck.outcome != 'failure' - uses: aquasecurity/trivy-action@0.21.0 + uses: aquasecurity/trivy-action@0.22.0 with: image-ref: "tractusx/${{ matrix.image }}:sha-${{ needs.git-sha7.outputs.value }}" format: "sarif" From fbe86c775fd2864f7d4f1d4f79e0a6bca5133e1f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 22:01:24 +0200 Subject: [PATCH 4/5] chore(deps): bump com.nimbusds:nimbus-jose-jwt from 9.39.3 to 9.40 (#1353) Bumps [com.nimbusds:nimbus-jose-jwt](https://bitbucket.org/connect2id/nimbus-jose-jwt) from 9.39.3 to 9.40. - [Changelog](https://bitbucket.org/connect2id/nimbus-jose-jwt/src/master/CHANGELOG.txt) - [Commits](https://bitbucket.org/connect2id/nimbus-jose-jwt/branches/compare/9.40..9.39.3) --- updated-dependencies: - dependency-name: com.nimbusds:nimbus-jose-jwt dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 40e8c6481..818d95e1d 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -13,7 +13,7 @@ flyway = "10.13.0" jackson = "2.17.1" jakarta-json = "2.0.1" jupiter = "5.10.2" -nimbus = "9.39.3" +nimbus = "9.40" netty-mockserver = "5.15.0" okhttp = "4.12.0" postgres = "42.7.3" From b15e13e52718bfcc08498b0ec9a5fe44ccf50065 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 22:25:19 +0200 Subject: [PATCH 5/5] chore(deps): bump flyway from 10.13.0 to 10.14.0 (#1354) * chore(deps): bump flyway from 10.13.0 to 10.14.0 Bumps `flyway` from 10.13.0 to 10.14.0. Updates `org.flywaydb:flyway-core` from 10.13.0 to 10.14.0 - [Release notes](https://github.com/flyway/flyway/releases) - [Commits](https://github.com/flyway/flyway/compare/flyway-10.13.0...flyway-10.14.0) Updates `org.flywaydb:flyway-database-postgresql` from 10.13.0 to 10.14.0 --- updated-dependencies: - dependency-name: org.flywaydb:flyway-core dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: org.flywaydb:flyway-database-postgresql dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * DEPENDENCIES --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Paul Latzelsperger --- DEPENDENCIES | 44 ++++++++++++++++++++++++++------------- gradle/libs.versions.toml | 2 +- 2 files changed, 30 insertions(+), 16 deletions(-) diff --git a/DEPENDENCIES b/DEPENDENCIES index fe4c58d33..524af644b 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -99,7 +99,6 @@ maven/mavencentral/com.nimbusds/content-type/2.3, Apache-2.0, approved, clearlyd maven/mavencentral/com.nimbusds/lang-tag/1.7, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.28, Apache-2.0, approved, clearlydefined maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.37.3, Apache-2.0, approved, #11701 -maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.39.3, Apache-2.0, approved, #14830 maven/mavencentral/com.nimbusds/nimbus-jose-jwt/9.40, , restricted, clearlydefined maven/mavencentral/com.nimbusds/oauth2-oidc-sdk/11.9.1, Apache-2.0, approved, #12667 maven/mavencentral/com.puppycrawl.tools/checkstyle/10.17.0, LGPL-2.1-or-later AND (Apache-2.0 AND LGPL-2.1-or-later) AND Apache-2.0, approved, #15077 @@ -530,8 +529,8 @@ maven/mavencentral/org.eclipse.jetty/jetty-servlet/11.0.21, EPL-2.0 OR Apache-2. maven/mavencentral/org.eclipse.jetty/jetty-util/11.0.21, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty/jetty-webapp/11.0.21, EPL-2.0 OR Apache-2.0, approved, rt.jetty maven/mavencentral/org.eclipse.jetty/jetty-xml/11.0.21, EPL-2.0 OR Apache-2.0, approved, rt.jetty -maven/mavencentral/org.flywaydb/flyway-core/10.13.0, Apache-2.0, approved, clearlydefined -maven/mavencentral/org.flywaydb/flyway-database-postgresql/10.13.0, NOASSERTION, restricted, clearlydefined +maven/mavencentral/org.flywaydb/flyway-core/10.14.0, Apache-2.0, approved, clearlydefined +maven/mavencentral/org.flywaydb/flyway-database-postgresql/10.14.0, , restricted, clearlydefined maven/mavencentral/org.glassfish.hk2.external/aopalliance-repackaged/3.0.6, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.glassfish maven/mavencentral/org.glassfish.hk2/hk2-api/3.0.6, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.glassfish maven/mavencentral/org.glassfish.hk2/hk2-locator/3.0.6, EPL-2.0 OR GPL-2.0-only with Classpath-exception-2.0, approved, ee4j.glassfish @@ -621,44 +620,59 @@ maven/mavencentral/org.xmlunit/xmlunit-core/2.9.1, Apache-2.0, approved, #6272 maven/mavencentral/org.xmlunit/xmlunit-placeholders/2.9.1, Apache-2.0, approved, clearlydefined maven/mavencentral/org.yaml/snakeyaml/1.33, Apache-2.0, approved, clearlydefined maven/mavencentral/org.yaml/snakeyaml/2.2, Apache-2.0 AND (Apache-2.0 OR BSD-3-Clause OR EPL-1.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later), approved, #10232 -maven/mavencentral/software.amazon.awssdk/annotations/2.25.64, Apache-2.0, approved, #13691 maven/mavencentral/software.amazon.awssdk/annotations/2.25.66, Apache-2.0, approved, #13691 +maven/mavencentral/software.amazon.awssdk/annotations/2.25.69, Apache-2.0, approved, #13691 maven/mavencentral/software.amazon.awssdk/apache-client/2.25.66, Apache-2.0, approved, #13687 -maven/mavencentral/software.amazon.awssdk/arns/2.25.64, Apache-2.0, approved, #13695 +maven/mavencentral/software.amazon.awssdk/apache-client/2.25.69, Apache-2.0, approved, #13687 maven/mavencentral/software.amazon.awssdk/arns/2.25.66, Apache-2.0, approved, #13695 -maven/mavencentral/software.amazon.awssdk/auth/2.25.64, Apache-2.0, approved, #13692 +maven/mavencentral/software.amazon.awssdk/arns/2.25.69, Apache-2.0, approved, #13695 maven/mavencentral/software.amazon.awssdk/auth/2.25.66, Apache-2.0, approved, #13692 -maven/mavencentral/software.amazon.awssdk/aws-core/2.25.64, Apache-2.0, approved, #13702 +maven/mavencentral/software.amazon.awssdk/auth/2.25.69, Apache-2.0, approved, #13692 maven/mavencentral/software.amazon.awssdk/aws-core/2.25.66, Apache-2.0, approved, #13702 +maven/mavencentral/software.amazon.awssdk/aws-core/2.25.69, Apache-2.0, approved, #13702 maven/mavencentral/software.amazon.awssdk/aws-query-protocol/2.25.66, Apache-2.0, approved, #13701 +maven/mavencentral/software.amazon.awssdk/aws-query-protocol/2.25.69, Apache-2.0, approved, #13701 maven/mavencentral/software.amazon.awssdk/aws-xml-protocol/2.25.66, Apache-2.0, approved, #13684 +maven/mavencentral/software.amazon.awssdk/aws-xml-protocol/2.25.69, Apache-2.0, approved, #13684 maven/mavencentral/software.amazon.awssdk/checksums-spi/2.25.66, Apache-2.0, approved, #13686 +maven/mavencentral/software.amazon.awssdk/checksums-spi/2.25.69, Apache-2.0, approved, #13686 maven/mavencentral/software.amazon.awssdk/checksums/2.25.66, Apache-2.0, approved, #13677 +maven/mavencentral/software.amazon.awssdk/checksums/2.25.69, Apache-2.0, approved, #13677 maven/mavencentral/software.amazon.awssdk/crt-core/2.25.66, Apache-2.0, approved, #13705 +maven/mavencentral/software.amazon.awssdk/crt-core/2.25.69, Apache-2.0, approved, #13705 maven/mavencentral/software.amazon.awssdk/endpoints-spi/2.25.66, Apache-2.0, approved, #13681 +maven/mavencentral/software.amazon.awssdk/endpoints-spi/2.25.69, Apache-2.0, approved, #13681 maven/mavencentral/software.amazon.awssdk/http-auth-aws/2.25.66, Apache-2.0, approved, #13696 +maven/mavencentral/software.amazon.awssdk/http-auth-aws/2.25.69, Apache-2.0, approved, #13696 maven/mavencentral/software.amazon.awssdk/http-auth-spi/2.25.66, Apache-2.0, approved, #13704 +maven/mavencentral/software.amazon.awssdk/http-auth-spi/2.25.69, Apache-2.0, approved, #13704 maven/mavencentral/software.amazon.awssdk/http-auth/2.25.66, Apache-2.0, approved, #13682 -maven/mavencentral/software.amazon.awssdk/http-client-spi/2.25.64, Apache-2.0, approved, #13706 +maven/mavencentral/software.amazon.awssdk/http-auth/2.25.69, Apache-2.0, approved, #13682 maven/mavencentral/software.amazon.awssdk/http-client-spi/2.25.66, Apache-2.0, approved, #13706 +maven/mavencentral/software.amazon.awssdk/http-client-spi/2.25.69, Apache-2.0, approved, #13706 maven/mavencentral/software.amazon.awssdk/iam/2.25.66, Apache-2.0, approved, clearlydefined maven/mavencentral/software.amazon.awssdk/identity-spi/2.25.66, Apache-2.0, approved, #13685 -maven/mavencentral/software.amazon.awssdk/json-utils/2.25.64, Apache-2.0, approved, #13698 +maven/mavencentral/software.amazon.awssdk/identity-spi/2.25.69, Apache-2.0, approved, #13685 maven/mavencentral/software.amazon.awssdk/json-utils/2.25.66, Apache-2.0, approved, #13698 +maven/mavencentral/software.amazon.awssdk/json-utils/2.25.69, Apache-2.0, approved, #13698 maven/mavencentral/software.amazon.awssdk/metrics-spi/2.25.66, Apache-2.0, approved, #13680 +maven/mavencentral/software.amazon.awssdk/metrics-spi/2.25.69, Apache-2.0, approved, #13680 maven/mavencentral/software.amazon.awssdk/netty-nio-client/2.25.66, Apache-2.0, approved, #13693 +maven/mavencentral/software.amazon.awssdk/netty-nio-client/2.25.69, Apache-2.0, approved, #13693 maven/mavencentral/software.amazon.awssdk/profiles/2.25.66, Apache-2.0, approved, #13697 -maven/mavencentral/software.amazon.awssdk/protocol-core/2.25.64, Apache-2.0, approved, #13679 +maven/mavencentral/software.amazon.awssdk/profiles/2.25.69, Apache-2.0, approved, #13697 maven/mavencentral/software.amazon.awssdk/protocol-core/2.25.66, Apache-2.0, approved, #13679 -maven/mavencentral/software.amazon.awssdk/regions/2.25.64, Apache-2.0, approved, #13694 +maven/mavencentral/software.amazon.awssdk/protocol-core/2.25.69, Apache-2.0, approved, #13679 maven/mavencentral/software.amazon.awssdk/regions/2.25.66, Apache-2.0, approved, #13694 -maven/mavencentral/software.amazon.awssdk/s3-transfer-manager/2.25.64, Apache-2.0, approved, #13699 -maven/mavencentral/software.amazon.awssdk/s3/2.25.64, Apache-2.0, approved, #13688 +maven/mavencentral/software.amazon.awssdk/regions/2.25.69, Apache-2.0, approved, #13694 +maven/mavencentral/software.amazon.awssdk/s3-transfer-manager/2.25.69, Apache-2.0, approved, #13699 maven/mavencentral/software.amazon.awssdk/s3/2.25.66, Apache-2.0, approved, #13688 -maven/mavencentral/software.amazon.awssdk/sdk-core/2.25.64, Apache-2.0, approved, #13700 +maven/mavencentral/software.amazon.awssdk/s3/2.25.69, Apache-2.0, approved, #13688 maven/mavencentral/software.amazon.awssdk/sdk-core/2.25.66, Apache-2.0, approved, #13700 +maven/mavencentral/software.amazon.awssdk/sdk-core/2.25.69, Apache-2.0, approved, #13700 maven/mavencentral/software.amazon.awssdk/sts/2.25.66, Apache-2.0, approved, clearlydefined maven/mavencentral/software.amazon.awssdk/third-party-jackson-core/2.25.66, Apache-2.0, approved, #13703 -maven/mavencentral/software.amazon.awssdk/utils/2.25.64, Apache-2.0, approved, #13689 +maven/mavencentral/software.amazon.awssdk/third-party-jackson-core/2.25.69, Apache-2.0, approved, #13703 maven/mavencentral/software.amazon.awssdk/utils/2.25.66, Apache-2.0, approved, #13689 +maven/mavencentral/software.amazon.awssdk/utils/2.25.69, Apache-2.0, approved, #13689 maven/mavencentral/software.amazon.eventstream/eventstream/1.0.1, Apache-2.0, approved, clearlydefined diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 818d95e1d..21eb13dec 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -9,7 +9,7 @@ awaitility = "4.2.1" aws = "2.25.69" azure-identity = "1.12.1" bouncyCastle-jdk18on = "1.78.1" -flyway = "10.13.0" +flyway = "10.14.0" jackson = "2.17.1" jakarta-json = "2.0.1" jupiter = "5.10.2"