diff --git a/extensions/core-ionos-s3/build.gradle.kts b/extensions/core-ionos-s3/build.gradle.kts index 3051ff7..400e952 100644 --- a/extensions/core-ionos-s3/build.gradle.kts +++ b/extensions/core-ionos-s3/build.gradle.kts @@ -22,6 +22,7 @@ dependencies { implementation("${edcGroup}:transfer-spi:${edcVersion}") implementation("io.minio:minio:${minIOVersion}") + testImplementation("${edcGroup}:junit:${edcVersion}") testImplementation("org.junit.jupiter:junit-jupiter-api:${junitVersion}") testImplementation("org.junit.jupiter:junit-jupiter-engine:${junitVersion}") } diff --git a/extensions/core-ionos-s3/src/main/java/com/ionos/edc/extension/s3/schema/IonosBucketSchema.java b/extensions/core-ionos-s3/src/main/java/com/ionos/edc/extension/s3/schema/IonosBucketSchema.java index dc116cc..4f783c2 100644 --- a/extensions/core-ionos-s3/src/main/java/com/ionos/edc/extension/s3/schema/IonosBucketSchema.java +++ b/extensions/core-ionos-s3/src/main/java/com/ionos/edc/extension/s3/schema/IonosBucketSchema.java @@ -14,6 +14,8 @@ package com.ionos.edc.extension.s3.schema; +import org.eclipse.edc.spi.types.domain.transfer.FlowType; + import static org.eclipse.edc.spi.constants.CoreConstants.EDC_NAMESPACE; public interface IonosBucketSchema { @@ -27,5 +29,7 @@ public interface IonosBucketSchema { String ACCESS_KEY_ID = EDC_NAMESPACE + "accessKey"; String SECRET_ACCESS_KEY = EDC_NAMESPACE + "secretKey"; + String PUSH_TRANSFER_TYPE = TYPE + "-" + FlowType.PUSH; + String STORAGE_NAME_DEFAULT = "https://s3-eu-central-1.ionoscloud.com"; } diff --git a/extensions/provision-ionos-s3/build.gradle.kts b/extensions/provision-ionos-s3/build.gradle.kts index 256b91a..536cbca 100644 --- a/extensions/provision-ionos-s3/build.gradle.kts +++ b/extensions/provision-ionos-s3/build.gradle.kts @@ -22,6 +22,7 @@ dependencies { implementation(project(":extensions:core-ionos-s3")) + testImplementation("${edcGroup}:junit:${edcVersion}") testImplementation("org.junit.jupiter:junit-jupiter-api:${junitVersion}") testImplementation("org.junit.jupiter:junit-jupiter-engine:${junitVersion}") } diff --git a/extensions/provision-ionos-s3/src/main/java/com/ionos/edc/provision/s3/bucket/IonosS3ConsumerResourceDefinitionGenerator.java b/extensions/provision-ionos-s3/src/main/java/com/ionos/edc/provision/s3/bucket/IonosS3ConsumerResourceDefinitionGenerator.java index 62f79ee..abc0123 100644 --- a/extensions/provision-ionos-s3/src/main/java/com/ionos/edc/provision/s3/bucket/IonosS3ConsumerResourceDefinitionGenerator.java +++ b/extensions/provision-ionos-s3/src/main/java/com/ionos/edc/provision/s3/bucket/IonosS3ConsumerResourceDefinitionGenerator.java @@ -35,6 +35,7 @@ public class IonosS3ConsumerResourceDefinitionGenerator implements ConsumerResou Objects.requireNonNull(policy, "policy must always be provided"); var destination = transferProcess.getDataDestination(); + Objects.requireNonNull(destination, "dataDestination must always be provided"); var path = destination.getStringProperty(IonosBucketSchema.PATH); if ((path != null) && !path.endsWith("/")) { @@ -64,7 +65,7 @@ public boolean canGenerate(TransferProcess transferProcess, Policy policy) { Objects.requireNonNull(transferProcess, "transferProcess must always be provided"); Objects.requireNonNull(policy, "policy must always be provided"); - return IonosBucketSchema.TYPE.equals(transferProcess.getDestinationType()); + return IonosBucketSchema.PUSH_TRANSFER_TYPE.equals(transferProcess.getTransferType()); } } diff --git a/launchers/base/connector/build.gradle.kts b/launchers/base/connector/build.gradle.kts index 3ca90b6..6c19ab5 100644 --- a/launchers/base/connector/build.gradle.kts +++ b/launchers/base/connector/build.gradle.kts @@ -16,35 +16,18 @@ plugins { `java-library` } -repositories { - maven {// while runtime-metamodel dependency is still a snapshot - url = uri("https://oss.sonatype.org/content/repositories/snapshots/") - } - mavenCentral() - mavenLocal() -} - val edcGroup: String by project val edcVersion: String by project dependencies { // Core - implementation("${edcGroup}:boot:${edcVersion}") implementation("${edcGroup}:connector-core:${edcVersion}") implementation("${edcGroup}:http:${edcVersion}") implementation("${edcGroup}:dsp:${edcVersion}") - implementation("${edcGroup}:configuration-filesystem:${edcVersion}") - - // Management API implementation("${edcGroup}:management-api:${edcVersion}") - - // EDR API - implementation("${edcGroup}:edr-cache-api:${edcVersion}") - implementation("${edcGroup}:edr-store-core:${edcVersion}") - implementation("${edcGroup}:edr-store-receiver:${edcVersion}") + implementation("${edcGroup}:control-api-configuration:${edcVersion}") // Control Plane - implementation("${edcGroup}:control-api-configuration:${edcVersion}") implementation("${edcGroup}:control-plane-api-client:${edcVersion}") implementation("${edcGroup}:control-plane-api:${edcVersion}") implementation("${edcGroup}:control-plane-core:${edcVersion}") @@ -59,8 +42,10 @@ dependencies { implementation("${edcGroup}:data-plane-http:${edcVersion}") implementation("${edcGroup}:transfer-data-plane-signaling:${edcVersion}") - // Vault - implementation("${edcGroup}:vault-hashicorp:${edcVersion}") + // EDR Cache + implementation("${edcGroup}:edr-cache-api:${edcVersion}") + implementation("${edcGroup}:edr-store-core:${edcVersion}") + implementation("${edcGroup}:edr-store-receiver:${edcVersion}") // Validators implementation("${edcGroup}:validator-data-address-http-data:${edcVersion}") diff --git a/launchers/dev/connector-consumer/build.gradle.kts b/launchers/dev/connector-consumer/build.gradle.kts index f6f60ec..4b34d51 100644 --- a/launchers/dev/connector-consumer/build.gradle.kts +++ b/launchers/dev/connector-consumer/build.gradle.kts @@ -24,6 +24,8 @@ val edcVersion: String by project dependencies { implementation(project(":launchers:base:connector")) + implementation("${edcGroup}:configuration-filesystem:${edcVersion}") + implementation("${edcGroup}:vault-hashicorp:${edcVersion}") implementation("${edcGroup}:iam-mock:${edcVersion}") } diff --git a/launchers/dev/connector-consumer/resources/config.properties b/launchers/dev/connector-consumer/resources/config.properties index 54238d9..22261f5 100644 --- a/launchers/dev/connector-consumer/resources/config.properties +++ b/launchers/dev/connector-consumer/resources/config.properties @@ -1,4 +1,3 @@ -edc.runtime.id=consumer edc.participant.id=consumer web.http.port=9191 web.http.path=/api @@ -13,7 +12,10 @@ web.http.public.path=/public edc.dsp.callback.address=http://localhost:9292/protocol edc.dataplane.token.validation.endpoint=http://localhost:9293/control/token edc.dataplane.api.public.baseurl=http://localhost:9393/public + edc.api.auth.key=password +edc.transfer.proxy.token.signer.privatekey.alias=edc.connector.private.key +edc.transfer.proxy.token.verifier.publickey.alias=edc.connector.public.key edc.vault.hashicorp.url=http://localhost:8200 edc.vault.hashicorp.token=test-token @@ -21,5 +23,5 @@ edc.vault.hashicorp.timeout.seconds=30 edc.ionos.access.key= edc.ionos.secret.key= -edc.ionos.endpoint=https://s3-eu-central-1.ionoscloud.com -edc.ionos.token= \ No newline at end of file +edc.ionos.endpoint= +edc.ionos.token= diff --git a/launchers/dev/connector-provider/build.gradle.kts b/launchers/dev/connector-provider/build.gradle.kts index 7810641..4319e3c 100644 --- a/launchers/dev/connector-provider/build.gradle.kts +++ b/launchers/dev/connector-provider/build.gradle.kts @@ -24,6 +24,8 @@ val edcVersion: String by project dependencies { implementation(project(":launchers:base:connector")) + implementation("${edcGroup}:configuration-filesystem:${edcVersion}") + implementation("${edcGroup}:vault-hashicorp:${edcVersion}") implementation("${edcGroup}:iam-mock:${edcVersion}") } diff --git a/launchers/dev/connector-provider/resources/config.properties b/launchers/dev/connector-provider/resources/config.properties index 0a17241..c24f676 100644 --- a/launchers/dev/connector-provider/resources/config.properties +++ b/launchers/dev/connector-provider/resources/config.properties @@ -1,4 +1,3 @@ -edc.runtime.id=provider edc.participant.id=provider web.http.port=8181 web.http.path=/api @@ -13,7 +12,10 @@ web.http.public.path=/public edc.dsp.callback.address=http://localhost:8282/protocol edc.dataplane.token.validation.endpoint=http://localhost:8283/control/token edc.dataplane.api.public.baseurl=http://localhost:8383/public + edc.api.auth.key=password +edc.transfer.proxy.token.signer.privatekey.alias=edc.connector.private.key +edc.transfer.proxy.token.verifier.publickey.alias=edc.connector.public.key edc.vault.hashicorp.url=http://localhost:8200 edc.vault.hashicorp.token=test-token @@ -21,4 +23,4 @@ edc.vault.hashicorp.timeout.seconds=30 edc.ionos.access.key= edc.ionos.secret.key= -edc.ionos.endpoint=https://s3-eu-central-1.ionoscloud.com +edc.ionos.endpoint= diff --git a/launchers/prod/connector-persistence/build.gradle.kts b/launchers/prod/connector-persistence/build.gradle.kts index de89a35..6cc09e9 100644 --- a/launchers/prod/connector-persistence/build.gradle.kts +++ b/launchers/prod/connector-persistence/build.gradle.kts @@ -25,6 +25,10 @@ val postgresVersion: String by project dependencies { implementation(project(":launchers:base:connector")) + implementation("${edcGroup}:configuration-filesystem:${edcVersion}") + implementation("${edcGroup}:vault-hashicorp:${edcVersion}") + implementation("${edcGroup}:iam-mock:${edcVersion}") + implementation("org.postgresql:postgresql:$postgresVersion") implementation("${edcGroup}:sql-pool-apache-commons:$edcVersion") implementation("${edcGroup}:transaction-local:$edcVersion") @@ -35,8 +39,6 @@ dependencies { implementation("${edcGroup}:contract-definition-store-sql:$edcVersion") implementation("${edcGroup}:contract-negotiation-store-sql:$edcVersion") implementation("${edcGroup}:transfer-process-store-sql:$edcVersion") - - implementation("${edcGroup}:iam-mock:${edcVersion}") } application { diff --git a/launchers/prod/connector-persistence/resources/config.properties b/launchers/prod/connector-persistence/resources/config.properties index 0593c58..d65abeb 100644 --- a/launchers/prod/connector-persistence/resources/config.properties +++ b/launchers/prod/connector-persistence/resources/config.properties @@ -1,4 +1,3 @@ -edc.runtime.id=connector edc.participant.id=connector web.http.port=8181 web.http.path=/api @@ -13,12 +12,11 @@ web.http.public.path=/public edc.dsp.callback.address=http://localhost:8282/protocol edc.dataplane.token.validation.endpoint=http://localhost:8283/control/token edc.dataplane.api.public.baseurl=http://localhost:8383/public + edc.api.auth.key=password +edc.transfer.proxy.token.signer.privatekey.alias=edc.connector.private.key +edc.transfer.proxy.token.verifier.publickey.alias=edc.connector.public.key -edc.vault.clientid=company1 -edc.vault.tenantid=1 -edc.vault.certificate=/resources/ -edc.vault.name=ionos edc.vault.hashicorp.url=http://localhost:8200 edc.vault.hashicorp.token=test-token edc.vault.hashicorp.timeout.seconds=30 diff --git a/launchers/prod/connector/build.gradle.kts b/launchers/prod/connector/build.gradle.kts index 2fe3597..10ca550 100644 --- a/launchers/prod/connector/build.gradle.kts +++ b/launchers/prod/connector/build.gradle.kts @@ -24,7 +24,9 @@ val edcVersion: String by project dependencies { implementation(project(":launchers:base:connector")) - implementation("${edcGroup}:iam-mock:${edcVersion}") + implementation("${edcGroup}:configuration-filesystem:${edcVersion}") + implementation("${edcGroup}:vault-hashicorp:${edcVersion}") + implementation("${edcGroup}:iam-mock:${edcVersion}") } application { diff --git a/launchers/prod/connector/resources/config.properties b/launchers/prod/connector/resources/config.properties index 5d6ca5a..6cb13c5 100644 --- a/launchers/prod/connector/resources/config.properties +++ b/launchers/prod/connector/resources/config.properties @@ -1,4 +1,3 @@ -edc.runtime.id=connector edc.participant.id=connector web.http.port=8181 web.http.path=/api @@ -13,12 +12,11 @@ web.http.public.path=/public edc.dsp.callback.address=http://localhost:8282/protocol edc.dataplane.token.validation.endpoint=http://localhost:8283/control/token edc.dataplane.api.public.baseurl=http://localhost:8383/public + edc.api.auth.key=password +edc.transfer.proxy.token.signer.privatekey.alias=edc.connector.private.key +edc.transfer.proxy.token.verifier.publickey.alias=edc.connector.public.key -edc.vault.clientid=company1 -edc.vault.tenantid=1 -edc.vault.certificate=/resources/ -edc.vault.name=ionos edc.vault.hashicorp.url=http://localhost:8200 edc.vault.hashicorp.token=test-token edc.vault.hashicorp.timeout.seconds=30 diff --git a/settings.gradle.kts b/settings.gradle.kts index a53636b..3e5448b 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -10,13 +10,14 @@ dependencyResolutionManagement { repositories { - mavenCentral() mavenLocal() } versionCatalogs { + val group = providers.gradleProperty("edcGroup") + val version = providers.gradleProperty("edcVersion") create("libs") { - from("org.eclipse.edc:edc-versions:0.1.2") + from(group.get() + ":edc-versions:" + version.get()) } } }