diff --git a/.github/workflows/run-end2end-tests.yml b/.github/workflows/run-end2end-tests.yml index 02ad6cf5..52125ef9 100644 --- a/.github/workflows/run-end2end-tests.yml +++ b/.github/workflows/run-end2end-tests.yml @@ -71,7 +71,7 @@ jobs: --timeout=90s - name: "Load Docker Images" run: |- - kind load docker-image --name mxd data-service-api tx-identityhub tx-identityhub-sts tx-catalog-server tx-sts + kind load docker-image --name mxd data-service-api tx-identityhub tx-catalog-server tx-issuerservice - name: "Terraform init" working-directory: ./mxd @@ -99,4 +99,4 @@ jobs: - name: "Destroy the KinD cluster" run: >- - kind get clusters | xargs -n1 kind delete cluster --name \ No newline at end of file + kind get clusters | xargs -n1 kind delete cluster --name diff --git a/mxd-runtimes/gradle/catalogserver.versions.toml b/mxd-runtimes/gradle/catalogserver.versions.toml index 9cc4d423..834b4935 100644 --- a/mxd-runtimes/gradle/catalogserver.versions.toml +++ b/mxd-runtimes/gradle/catalogserver.versions.toml @@ -2,8 +2,8 @@ format.version = "1.1" [versions] -edc = "0.12.0-SNAPSHOT" -tractusx = "0.8.0" +edc = "0.12.0" +tractusx = "0.9.0" postgres = "42.7.3" [libraries] diff --git a/mxd-runtimes/gradle/libs.versions.toml b/mxd-runtimes/gradle/libs.versions.toml index 0ba129e5..45c2b380 100644 --- a/mxd-runtimes/gradle/libs.versions.toml +++ b/mxd-runtimes/gradle/libs.versions.toml @@ -4,9 +4,9 @@ format.version = "1.1" [versions] awaitility = "4.2.2" assertj = "3.25.3" -edc = "0.12.0-SNAPSHOT" -ih = "0.12.0-SNAPSHOT" -tractusx = "0.8.0" +edc = "0.12.0" +ih = "0.12.0" +tractusx = "0.9.0" tractusx-issuer = "0.1.0-SNAPSHOT" commons = "2.11.0" opentelemetry = "1.32.0" diff --git a/mxd/modules/connector/main.tf b/mxd/modules/connector/main.tf index a8f179e0..869bd3a0 100644 --- a/mxd/modules/connector/main.tf +++ b/mxd/modules/connector/main.tf @@ -30,7 +30,7 @@ resource "helm_release" "connector" { repository = "https://eclipse-tractusx.github.io/charts/dev" chart = "tractusx-connector" - version = "0.8.0" + version = "0.9.0" values = [ file("${path.module}/values.yaml"), diff --git a/mxd/modules/identity-hub/main.tf b/mxd/modules/identity-hub/main.tf index 97a8e90e..43d2646e 100644 --- a/mxd/modules/identity-hub/main.tf +++ b/mxd/modules/identity-hub/main.tf @@ -110,7 +110,7 @@ resource "kubernetes_deployment" "identityhub" { resource "kubernetes_config_map" "identityhub-config" { metadata { - name = "${lower(var.humanReadableName)}-ih-config" + name = "${lower(var.humanReadableName)}-config" namespace = var.namespace } diff --git a/mxd/outputs.tf b/mxd/outputs.tf index 521a9ce1..5c618bc5 100644 --- a/mxd/outputs.tf +++ b/mxd/outputs.tf @@ -18,11 +18,11 @@ # output "bob-database-credentials" { - value = local.alice-postgres + value = local.bob-postgres } output "alice-database-credentials" { - value = local.bob-postgres + value = local.alice-postgres } output "bob-urls" { diff --git a/mxd/postman/mxd-seed.json b/mxd/postman/mxd-seed.json index f5585dea..d729225e 100644 --- a/mxd/postman/mxd-seed.json +++ b/mxd/postman/mxd-seed.json @@ -193,7 +193,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"@context\": [\n \"https://w3id.org/edc/connector/management/v0.0.1\"\n ],\n \"@type\": \"PolicyDefinition\",\n \"@id\": \"require-membership\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"Membership\",\n \"operator\": \"eq\",\n \"rightOperand\": \"active\"\n }\n }\n ]\n }\n}", + "raw": "{\n \"@context\": [\n {\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\n },\n \"https://w3id.org/tractusx/policy/v1.0.0\",\n \"http://www.w3.org/ns/odrl.jsonld\"\n ],\n \"@type\": \"PolicyDefinitionRequestDto\",\n \"@id\": \"require-membership\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"Membership\",\n \"operator\": \"eq\",\n \"rightOperand\": \"active\"\n }\n }\n ]\n }\n}", "options": { "raw": { "language": "json" @@ -244,7 +244,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"@context\": [\n \"https://w3id.org/edc/connector/management/v0.0.1\"\n ],\n \"@type\": \"PolicyDefinition\",\n \"@id\": \"require-deg\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"FrameworkAgreement\",\n \"operator\": \"eq\",\n \"rightOperand\": \"DataExchangeGovernance\"\n }\n }\n ]\n }\n}", + "raw": "{\n \"@context\": [\n {\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\n },\n \"https://w3id.org/tractusx/policy/v1.0.0\",\n \"http://www.w3.org/ns/odrl.jsonld\"\n ],\n \"@type\": \"PolicyDefinitionRequestDto\",\n \"@id\": \"require-deg\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"FrameworkAgreement\",\n \"operator\": \"eq\",\n \"rightOperand\": \"DataExchangeGovernance\"\n }\n }\n ]\n }\n}", "options": { "raw": { "language": "json" @@ -295,7 +295,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"@context\": [\n \"https://w3id.org/edc/connector/management/v0.0.1\"\n ],\n \"@type\": \"PolicyDefinition\",\n \"@id\": \"require-dismantler\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"Dismantler\",\n \"operator\": \"eq\",\n \"rightOperand\": \"active\"\n }\n }\n ]\n }\n}", + "raw": "{\n \"@context\": [\n {\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\n },\n \"https://w3id.org/tractusx/policy/v1.0.0\",\n \"http://www.w3.org/ns/odrl.jsonld\"\n ],\n \"@type\": \"PolicyDefinitionRequestDto\",\n \"@id\": \"require-dismantler\",\n \"policy\": {\n \"@type\": \"http://www.w3.org/ns/odrl/2/Set\",\n \"permission\": [\n {\n \"action\": \"use\",\n \"constraint\": {\n \"@type\": \"LogicalConstraint\",\n \"leftOperand\": \"Dismantler\",\n \"operator\": \"eq\",\n \"rightOperand\": \"active\"\n }\n }\n ]\n }\n}", "options": { "raw": { "language": "json" @@ -1160,7 +1160,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"did\": \"{{CONSUMER_ID}}\",\n \"participantId\": \"{{CONSUMER_ID}}\",\n \"name\": \"{{CONSUMER_NAME}}\"\n}", + "raw": "{\n \"roles\":[\"admin\"],\n \"serviceEndpoints\":[\n {\n \"type\": \"IssuerService\",\n \"serviceEndpoint\": \"http://dataspace-issuer-service:10012/api/issuance/v1alpha/issuers/ZGlkOndlYjpkYXRhc3BhY2UtaXNzdWVyLXNlcnZpY2UlM0ExMDAxNjppc3N1ZXI=\",\n \"id\": \"issuer-service-1\"\n }\n ],\n \"active\": true,\n \"participantId\": \"{{CONSUMER_ID}}\",\n \"did\": \"{{CONSUMER_ID}}\",\n \"key\":{\n \"keyId\": \"{{CONSUMER_ID}}#key-1\",\n \"privateKeyAlias\": \"key-1\",\n \"keyGeneratorParams\":{\n \"algorithm\": \"EdDSA\"\n }\n }\n }", "options": { "raw": { "language": "json" @@ -1168,13 +1168,13 @@ } }, "url": { - "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/participants", + "raw": "{{ISSUER_CS_URL}}/api/identity/v1alpha/participants", "host": [ - "{{ISSUER_ADMIN_URL}}" + "{{ISSUER_CS_URL}}" ], "path": [ "api", - "admin", + "identity", "v1alpha", "participants" ] @@ -1202,7 +1202,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"did\": \"{{PROVIDER_ID}}\",\n \"participantId\": \"{{PROVIDER_ID}}\",\n \"name\": \"{{PROVIDER_NAME}}\"\n}", + "raw": "{\n \"roles\":[\"admin\"],\n \"serviceEndpoints\":[\n {\n \"type\": \"IssuerService\",\n \"serviceEndpoint\": \"http://dataspace-issuer-service:10012/api/issuance/v1alpha/issuers/ZGlkOndlYjpkYXRhc3BhY2UtaXNzdWVyLXNlcnZpY2UlM0ExMDAxNjppc3N1ZXI=\",\n \"id\": \"issuer-service-1\"\n }\n ],\n \"active\": true,\n \"participantId\": \"{{PROVIDER_ID}}\",\n \"did\": \"{{PROVIDER_ID}}\",\n \"key\":{\n \"keyId\": \"{{PROVIDER_ID}}#key-1\",\n \"privateKeyAlias\": \"key-1\",\n \"keyGeneratorParams\":{\n \"algorithm\": \"EdDSA\"\n }\n }\n }", "options": { "raw": { "language": "json" @@ -1210,13 +1210,13 @@ } }, "url": { - "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/participants", + "raw": "{{ISSUER_CS_URL}}/api/identity/v1alpha/participants", "host": [ - "{{ISSUER_ADMIN_URL}}" + "{{ISSUER_CS_URL}}" ], "path": [ "api", - "admin", + "identity", "v1alpha", "participants" ] @@ -1252,7 +1252,7 @@ } }, "url": { - "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/attestations", + "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/participants/{{PARTICIPANT_CONTEXT_ID_BASE64}}/attestations", "host": [ "{{ISSUER_ADMIN_URL}}" ], @@ -1260,6 +1260,8 @@ "api", "admin", "v1alpha", + "participants", + "{{PARTICIPANT_CONTEXT_ID_BASE64}}", "attestations" ] }, @@ -1274,7 +1276,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"attestations\": [\n \"name-attestation-def-1\"\n ],\n \"credentialType\": \"NameCredential\",\n \"dataModel\": \"V_1_1\",\n \"id\": \"name-credential-def-1\",\n \"jsonSchema\": \"{}\",\n \"jsonSchemaUrl\": \"https://example.com/schema/name-credential.json\",\n \"mappings\": [\n {\n \"input\": \"participant.name\",\n \"output\": \"credentialSubject.name\",\n \"required\": \"true\"\n },\n {\n \"input\": \"credential.id\",\n \"output\": \"credentialSubject.id\",\n \"required\": \"true\"\n }\n ],\n \"rules\": [\n {\n \"type\": \"expression\",\n \"configuration\": {\n \"claim\": \"onboarding.signedDocuments\",\n \"operator\": \"eq\",\n \"value\": true\n }\n }\n ]\n}", + "raw": "{\n \"attestations\": [\n \"name-attestation-def-1\"\n ],\n \"formats\": [\n \"VC1_0_JWT\"\n ],\n \"credentialType\": \"NameCredential\",\n \"validity\": \"1000000000000\",\n \"id\": \"name-credential-def-1\",\n \"jsonSchema\": \"{}\",\n \"jsonSchemaUrl\": \"https://example.com/schema/name-credential.json\",\n \"mappings\": [\n {\n \"input\": \"participant.name\",\n \"output\": \"credentialSubject.name\",\n \"required\": \"true\"\n },\n {\n \"input\": \"credential.id\",\n \"output\": \"credentialSubject.id\",\n \"required\": \"true\"\n }\n ],\n \"rules\": [\n {\n \"type\": \"expression\",\n \"configuration\": {\n \"claim\": \"onboarding.signedDocuments\",\n \"operator\": \"eq\",\n \"value\": true\n }\n }\n ]\n}", "options": { "raw": { "language": "json" @@ -1282,7 +1284,7 @@ } }, "url": { - "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/credentialdefinitions", + "raw": "{{ISSUER_ADMIN_URL}}/api/admin/v1alpha/participants/{{PARTICIPANT_CONTEXT_ID_BASE64}}/credentialdefinitions", "host": [ "{{ISSUER_ADMIN_URL}}" ], @@ -1290,6 +1292,8 @@ "api", "admin", "v1alpha", + "participants", + "{{PARTICIPANT_CONTEXT_ID_BASE64}}", "credentialdefinitions" ] }, diff --git a/mxd/seed_data.tf b/mxd/seed_data.tf index 10d15d5c..9fd79429 100644 --- a/mxd/seed_data.tf +++ b/mxd/seed_data.tf @@ -23,7 +23,7 @@ resource "kubernetes_job" "seed_connectors_via_mgmt_api" { // wait until the connectors are running, otherwise terraform may report an error - depends_on = [module.alice-connector, module.bob-connector] + depends_on = [module.alice-identityhub, module.bob-identityhub] metadata { name = "seed-connectors" namespace = kubernetes_namespace.mxd-ns.metadata.0.name