diff --git a/.github/argo/argo_config.sh b/.github/argo/argo_config.sh index f7eb3d1f0c..0a7334fd1d 100644 --- a/.github/argo/argo_config.sh +++ b/.github/argo/argo_config.sh @@ -30,6 +30,7 @@ DELETE_DEV_TEST_RESOURCES=( "$ARGO_TEST_REGISTRY/resource?force=false&orphan=false&resourceName=data-tracex-dt-registry-test-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_TEST_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tracex-dt-registry-test-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_TEST_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-test&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_TEST_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-test-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" "$ARGO_DEV_TRACE_X_INSTANCE/resource?force=false&orphan=false&resourceName=data-tx-backend-postgresql-dev-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_DEV_TRACE_X_INSTANCE/resource?group=apps&force=true&orphan=false&resourceName=tx-backend-postgresql-dev&version=v1&kind=StatefulSet&namespace=product-traceability-foss" @@ -45,6 +46,8 @@ DELETE_DEV_TEST_RESOURCES=( "$ARGO_DEV_REGISTRY/resource?force=false&orphan=false&resourceName=data-tracex-dt-registry-dev-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_DEV_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tracex-dt-registry-dev-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_DEV_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-dev&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_DEV_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-dev-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" + ) DELETE_E2E_RESOURCES=( @@ -62,6 +65,8 @@ DELETE_E2E_RESOURCES=( "$ARGO_E2E_A_REGISTRY/resource?force=false&orphan=false&resourceName=data-tracex-dt-registry-e2e-a-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_E2E_A_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tracex-dt-registry-e2e-a-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_E2E_A_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-e2e-a&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_E2E_A_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-e2e-a-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_E2E_B_TRACE_X_INSTANCE/resource?force=false&orphan=false&resourceName=data-tx-backend-postgresql-e2e-b-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_E2E_B_TRACE_X_INSTANCE/resource?group=apps&force=true&orphan=false&resourceName=tx-backend-postgresql-e2e-b&version=v1&kind=StatefulSet&namespace=product-traceability-foss" @@ -77,6 +82,8 @@ DELETE_E2E_RESOURCES=( "$ARGO_E2E_B_REGISTRY/resource?force=false&orphan=false&resourceName=data-tracex-dt-registry-e2e-b-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_E2E_B_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tracex-dt-registry-e2e-b-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_E2E_B_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-e2e-b&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_E2E_B_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-e2e-b-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" + ) DELETE_INT_RESOURCES=( "$ARGO_INT_A_TRACE_X_INSTANCE/resource?force=false&orphan=false&resourceName=data-tx-backend-postgresql-int-a-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" @@ -93,6 +100,7 @@ DELETE_INT_RESOURCES=( "$ARGO_INT_A_REGISTRY/resource?force=false&orphan=false&resourceName=data-tx-registry-int-a-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_INT_A_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tx-registry-int-a-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_INT_A_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-int-a&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_INT_A_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-int-a-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" "$ARGO_INT_B_TRACE_X_INSTANCE/resource?force=false&orphan=false&resourceName=data-tx-backend-postgresql-int-b-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_INT_B_TRACE_X_INSTANCE/resource?group=apps&force=true&orphan=false&resourceName=tx-backend-postgresql-int-b&version=v1&kind=StatefulSet&namespace=product-traceability-foss" @@ -108,60 +116,74 @@ DELETE_INT_RESOURCES=( "$ARGO_INT_B_REGISTRY/resource?force=false&orphan=false&resourceName=data-tx-registry-int-b-postgresql-0&version=v1&kind=PersistentVolumeClaim&namespace=product-traceability-foss" "$ARGO_INT_B_REGISTRY/resource?group=apps&force=true&orphan=false&resourceName=tx-registry-int-b-postgresql&version=v1&kind=StatefulSet&namespace=product-traceability-foss" "$ARGO_INT_B_REGISTRY/resource?group=apps&force=false&orphan=false&resourceName=tracex-registry-int-b&version=v1&kind=Deployment&namespace=product-traceability-foss" + "$ARGO_INT_B_SUBMODELSERVER/resource?group=apps&force=false&orphan=false&resourceName=tracex-int-b-submodelserver-submodelservers&version=v1&kind=Deployment&namespace=product-traceability-foss" + ) SYNC_DEV_TEST_RESOURCES=( "$ARGO_TEST_REGISTRY/sync" "$ARGO_TEST_EDC_PROVIDER/sync" + "$ARGO_TEST_SUBMODELSERVER/sync" "$ARGO_TEST_TRACE_X_INSTANCE/sync" "$ARGO_DEV_REGISTRY/sync" "$ARGO_DEV_EDC_PROVIDER/sync" + "$ARGO_DEV_SUBMODELSERVER/sync" "$ARGO_DEV_TRACE_X_INSTANCE/sync" ) SYNC_E2E_RESOURCES=( "$ARGO_E2E_A_REGISTRY/sync" "$ARGO_E2E_A_EDC_PROVIDER/sync" "$ARGO_E2E_A_TRACE_X_INSTANCE/sync" + "$ARGO_E2E_A_SUBMODELSERVER/sync" "$ARGO_E2E_B_REGISTRY/sync" "$ARGO_E2E_B_EDC_PROVIDER/sync" + "$ARGO_E2E_B_SUBMODELSERVER/sync" "$ARGO_E2E_B_TRACE_X_INSTANCE/sync" ) SYNC_INT_RESOURCES=( "$ARGO_INT_A_REGISTRY/sync" "$ARGO_INT_A_EDC_PROVIDER/sync" + "$ARGO_INT_A_SUBMODELSERVER/sync" "$ARGO_INT_A_TRACE_X_INSTANCE/sync" "$ARGO_INT_B_REGISTRY/sync" "$ARGO_INT_B_EDC_PROVIDER/sync" + "$ARGO_INT_B_SUBMODELSERVER/sync" "$ARGO_INT_B_TRACE_X_INSTANCE/sync" ) DEV_TEST_RESOURCES=( "$ARGO_TEST_REGISTRY" "$ARGO_TEST_EDC_PROVIDER" "$ARGO_TEST_TRACE_X_INSTANCE" + "$ARGO_TEST_SUBMODELSERVER" "$ARGO_DEV_REGISTRY" "$ARGO_DEV_EDC_PROVIDER" "$ARGO_DEV_TRACE_X_INSTANCE" + "$ARGO_DEV_SUBMODELSERVER" ) E2E_RESOURCES=( "$ARGO_E2E_A_REGISTRY" "$ARGO_E2E_A_EDC_PROVIDER" "$ARGO_E2E_A_TRACE_X_INSTANCE" + "$ARGO_E2E_A_SUBMODELSERVER" "$ARGO_E2E_B_REGISTRY" "$ARGO_E2E_B_EDC_PROVIDER" "$ARGO_E2E_B_TRACE_X_INSTANCE" + "$ARGO_E2E_B_SUBMODELSERVER" ) INT_RESOURCES=( "$ARGO_INT_A_REGISTRY" "$ARGO_INT_A_EDC_PROVIDER" "$ARGO_INT_A_TRACE_X_INSTANCE" + "$ARGO_INT_A_SUBMODELSERVER" "$ARGO_INT_B_REGISTRY" "$ARGO_INT_B_EDC_PROVIDER" "$ARGO_INT_B_TRACE_X_INSTANCE" + "$ARGO_INT_B_SUBMODELSERVER" ) diff --git a/.github/workflows/argo.yml b/.github/workflows/argo.yml index 54434eb686..fb6a12ef96 100644 --- a/.github/workflows/argo.yml +++ b/.github/workflows/argo.yml @@ -66,31 +66,39 @@ env: ARGO_TEST_REGISTRY: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-dt-registry-test" ARGO_TEST_EDC_PROVIDER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-test-edc-provider" ARGO_TEST_TRACE_X_INSTANCE: "https://argo.dev.demo.catena-x.net/api/v1/applications/traceability-foss-test" + ARGO_TEST_SUBMODELSERVER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-test-submodelserver" ARGO_TEST_RegistryReload: "https://traceability-test.dev.demo.catena-x.net/api/registry/reload" ARGO_DEV_REGISTRY: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-dt-registry-dev" ARGO_DEV_EDC_PROVIDER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-edc-provider" ARGO_DEV_TRACE_X_INSTANCE: "https://argo.dev.demo.catena-x.net/api/v1/applications/traceability-foss-dev" + ARGO_DEV_SUBMODELSERVER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-dev-submodelserver" ARGO_DEV_RegistryReload: "https://traceability.dev.demo.catena-x.net/api/registry/reload" ARGO_E2E_A_REGISTRY: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-dt-registry-e2e-a" ARGO_E2E_A_EDC_PROVIDER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-edc-provider-e2e-a" ARGO_E2E_A_TRACE_X_INSTANCE: "https://argo.dev.demo.catena-x.net/api/v1/applications/traceability-foss-e2e-a" + ARGO_E2E_A_SUBMODELSERVER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-e2e-a-submodelserver" ARGO_E2E_A_RegistryReload: "https://traceability-e2e-a.dev.demo.catena-x.net/api/registry/reload" ARGO_E2E_B_REGISTRY: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-dt-registry-e2e-b" ARGO_E2E_B_EDC_PROVIDER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-edc-provider-e2e-b" ARGO_E2E_B_TRACE_X_INSTANCE: "https://argo.dev.demo.catena-x.net/api/v1/applications/traceability-foss-e2e-b" + ARGO_E2E_B_SUBMODELSERVER: "https://argo.dev.demo.catena-x.net/api/v1/applications/tracex-e2e-b-submodelserver" ARGO_E2E_B_RegistryReload: "https://traceability-e2e-b.dev.demo.catena-x.net/api/registry/reload" ARGO_INT_A_REGISTRY: "https://argo.int.demo.catena-x.net/api/v1/applications/tx-registry-int-a" ARGO_INT_A_EDC_PROVIDER: "https://argo.int.demo.catena-x.net/api/v1/applications/tx-edc-provider-int-a" ARGO_INT_A_TRACE_X_INSTANCE: "https://argo.int.demo.catena-x.net/api/v1/applications/traceability-foss-int-a" + ARGO_INT_A_SUBMODELSERVER: "https://argo.int.demo.catena-x.net/api/v1/applications/tracex-int-a-submodelserver" + ARGO_INT_A_RegistryReload: "https://traceability-int-a.int.demo.catena-x.net/api/registry/reload" ARGO_INT_B_REGISTRY: "https://argo.int.demo.catena-x.net/api/v1/applications/tx-registry-int-b" ARGO_INT_B_EDC_PROVIDER: "https://argo.int.demo.catena-x.net/api/v1/applications/tx-edc-provider-int-b" ARGO_INT_B_TRACE_X_INSTANCE: "https://argo.int.demo.catena-x.net/api/v1/applications/traceability-foss-int-b" + ARGO_INT_B_SUBMODELSERVER: "https://argo.int.demo.catena-x.net/api/v1/applications/tracex-int-b-submodelserver" + ARGO_INT_B_RegistryReload: "https://traceability-int-b.int.demo.catena-x.net/api/registry/reload" jobs: @@ -378,19 +386,19 @@ jobs: curl -o transform-and-upload.py https://raw.githubusercontent.com/eclipse-tractusx/item-relationship-service/main/local/testing/testdata/transform-and-upload.py if [ "${{ github.event.inputs.testdata_upload }}" == "true" ]; then if [ "${{ github.event.inputs.environment }}" == "Dev/Test" ]; then - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability-test.dev.demo.catena-x.net/api/submodel/data -edc https://trace-x-test-edc.dev.demo.catena-x.net -a https://trace-x-registry-test.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-test-edc-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-test-submodel-server.dev.demo.catena-x.net -edc https://trace-x-test-edc.dev.demo.catena-x.net -a https://trace-x-registry-test.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-test-edc-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC sleep 10 - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability.dev.demo.catena-x.net/api/submodel/data -edc https://trace-x-edc.dev.demo.catena-x.net -a https://trace-x-registry-dev.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-dev-submodel-server.dev.demo.catena-x.net -edc https://trace-x-edc.dev.demo.catena-x.net -a https://trace-x-registry-dev.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC sleep 10 elif [ "${{ github.event.inputs.environment }}" == "E2E-A/E2E-B" ]; then - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability-e2e-a.dev.demo.catena-x.net/api/submodel/data -edc https://trace-x-edc-e2e-a.dev.demo.catena-x.net -a https://trace-x-registry-e2e-a.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-e2e-a-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-e2e-a-submodel-server.dev.demo.catena-x.net -edc https://trace-x-edc-e2e-a.dev.demo.catena-x.net -a https://trace-x-registry-e2e-a.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-e2e-a-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC sleep 10 - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability-e2e-b.dev.demo.catena-x.net/api/submodel/data -edc https://trace-x-edc-e2e-b.dev.demo.catena-x.net -a https://trace-x-registry-e2e-b.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-e2e-b-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-e2e-b-submodel-server.dev.demo.catena-x.net -edc https://trace-x-edc-e2e-b.dev.demo.catena-x.net -a https://trace-x-registry-e2e-b.dev.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-e2e-b-dataplane.dev.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_DEV }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC sleep 10 elif [ "${{ github.event.inputs.environment }}" == "int-a/int-b" ]; then - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability-int-a.int.demo.catena-x.net/api/submodel/data -edc https://trace-x-edc-int-a.int.demo.catena-x.net -a https://trace-x-registry-int-a.int.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-a-dataplane.int.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_INT_A }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC BPNL00000003AZQP BPNL00000003CSGV + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-int-a-submodel-server.int.demo.catena-x.net -edc https://trace-x-edc-int-a.int.demo.catena-x.net -a https://trace-x-registry-int-a.int.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-a-dataplane.int.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_INT_A }} --aas3 --edcBPN BPNL00000003CML1 --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC BPNL00000003AZQP BPNL00000003CSGV sleep 10 - python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://traceability-int-b.int.demo.catena-x.net/api/submodel/data -edc https://trace-x-edc-int-b.int.demo.catena-x.net -a https://trace-x-registry-int-b.int.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-b-dataplane.int.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_INT_B }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC BPNL00000003AZQP BPNL00000003CSGV + python transform-and-upload.py -f ./tx-backend/testdata/CX_Testdata_MessagingTest_v${{ github.event.inputs.testdata_version }}.json -s https://tracex-int-b-submodel-server.int.demo.catena-x.net -edc https://trace-x-edc-int-b.int.demo.catena-x.net -a https://trace-x-registry-int-b.int.demo.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-b-dataplane.int.demo.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_INT_B }} --aas3 --edcBPN BPNL00000003CNKC --allowedBPNs BPNL00000003CML1 BPNL00000003CNKC BPNL00000003AZQP BPNL00000003CSGV sleep 10 fi elif [ "${{ github.event.inputs.testdata_upload }}" == "false" ]; then diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index ab39626416..f58afde5f8 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -17,42 +17,42 @@ jobs: run: echo HELM_VERSION=$(cat charts/traceability-foss/CHANGELOG.md | sed -n 's/.*\[\([0-9]\+\.[0-9]\+\.[0-9]\+\)\].*/\1/p' | head -n 1) >> $GITHUB_ENV - name: Update Chart.yaml appVersion - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/Chart.yaml - name: Update Chart.yaml version - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml - name: Update frontend dependency version in Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.dependencies[0].version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml - name: Update backend dependency version in Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.dependencies[1].version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml - name: Update frontend version in frontend/Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/charts/frontend/Chart.yaml - name: Update frontend appVersion in frontend/Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/charts/frontend/Chart.yaml - name: Update backend version in backend/Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/charts/backend/Chart.yaml - name: Update backend appVersion in frontend/Chart.yaml - uses: mikefarah/yq@v4.43.1 + uses: mikefarah/yq@v4.44.1 with: cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/charts/backend/Chart.yaml diff --git a/.github/workflows/trivy.yml b/.github/workflows/trivy.yml index e5a000eb9d..3b6806f1c4 100644 --- a/.github/workflows/trivy.yml +++ b/.github/workflows/trivy.yml @@ -72,7 +72,7 @@ jobs: run: docker build -t localhost:5000/traceability-foss:fe_${{ github.sha }} -f ./frontend/Dockerfile . - name: Run Trivy vulnerability scanner - uses: aquasecurity/trivy-action@0.19.0 + uses: aquasecurity/trivy-action@0.20.0 with: trivyignores: "./.github/workflows/.trivyignore" image-ref: 'localhost:5000/traceability-foss:fe_${{ github.sha }}' @@ -132,7 +132,7 @@ jobs: ref: ${{needs.prepare-env.outputs.check_sha}} - name: Run Trivy vulnerability scanner in repo mode - uses: aquasecurity/trivy-action@0.19.0 + uses: aquasecurity/trivy-action@0.20.0 with: trivyignores: "./.github/workflows/.trivyignore" scan-type: "config" @@ -178,7 +178,7 @@ jobs: tags: localhost:5000/traceability-foss:trivy - name: Run Trivy vulnerability scanner - uses: aquasecurity/trivy-action@0.19.0 + uses: aquasecurity/trivy-action@0.20.0 with: image-ref: localhost:5000/traceability-foss:trivy trivyignores: "./.github/workflows/.trivyignore" diff --git a/CHANGELOG.md b/CHANGELOG.md index f342303f59..ec5fe815af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,19 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). _**For better traceability add the corresponding GitHub issue number in each changelog entry, please.**_ ## [UNRELEASED - DD.MM.YYYY] +### Added +- #1010 Made submodel path configurable +### Changed +- #1010 Updated IRS Helm Version from 5.1.6 to 5.1.7 + +### Changed + +- XXX increase spotbugs-plugin version from 4.8.3.0 to 4.8.5.0 +- XXX increase install-plugin version from 3.1.1 to 3.1.2 +- XXX increase testcontainer-postgresql version from 1.19.7 to 1.19.8 +- XXX increase json-unit-assertj version from 3.2.2 to 3.2.7 +- XXX increase aquasecurity/trivy-action version from 0.19.0 to 0.20.0 +- XXX increase mikefarah/yq version from 4.43.1 to 4.44.1 ## [11.0.1 - 22.05.2024] diff --git a/DEPENDENCIES_BACKEND b/DEPENDENCIES_BACKEND index 24d6604ab5..4fd7cbe35e 100644 --- a/DEPENDENCIES_BACKEND +++ b/DEPENDENCIES_BACKEND @@ -156,9 +156,9 @@ maven/mavencentral/net.bytebuddy/byte-buddy-agent/1.14.13, Apache-2.0, approved, maven/mavencentral/net.bytebuddy/byte-buddy/1.12.21, Apache-2.0 AND BSD-3-Clause, approved, #1811 maven/mavencentral/net.bytebuddy/byte-buddy/1.14.13, Apache-2.0 AND BSD-3-Clause, approved, #7163 maven/mavencentral/net.java.dev.jna/jna/5.13.0, Apache-2.0 AND LGPL-2.1-or-later, approved, #6709 -maven/mavencentral/net.javacrumbs.json-unit/json-unit-assertj/3.2.2, Apache-2.0, approved, clearlydefined -maven/mavencentral/net.javacrumbs.json-unit/json-unit-core/3.2.2, Apache-2.0, approved, clearlydefined -maven/mavencentral/net.javacrumbs.json-unit/json-unit-json-path/3.2.2, Apache-2.0, approved, clearlydefined +maven/mavencentral/net.javacrumbs.json-unit/json-unit-assertj/3.2.7, Apache-2.0, approved, clearlydefined +maven/mavencentral/net.javacrumbs.json-unit/json-unit-core/3.2.7, Apache-2.0, approved, clearlydefined +maven/mavencentral/net.javacrumbs.json-unit/json-unit-json-path/3.2.7, Apache-2.0, approved, clearlydefined maven/mavencentral/net.minidev/accessors-smart/2.4.9, 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 @@ -262,10 +262,10 @@ maven/mavencentral/org.eclipse.tractusx.edc/callback-spi/0.6.0, Apache-2.0, appr maven/mavencentral/org.eclipse.tractusx.edc/core-spi/0.6.0, Apache-2.0, approved, automotive.tractusx maven/mavencentral/org.eclipse.tractusx.edc/edr-api/0.6.0, Apache-2.0, approved, automotive.tractusx maven/mavencentral/org.eclipse.tractusx.edc/edr-spi/0.6.0, Apache-2.0, approved, automotive.tractusx -maven/mavencentral/org.eclipse.tractusx.irs/irs-common/2.0.4-20240515.103302-1, Apache-2.0, approved, automotive.tractusx -maven/mavencentral/org.eclipse.tractusx.irs/irs-edc-client/2.0.4-20240515.103302-1, Apache-2.0, approved, automotive.tractusx -maven/mavencentral/org.eclipse.tractusx.irs/irs-models/2.0.4-20240515.103302-1, Apache-2.0, approved, automotive.tractusx -maven/mavencentral/org.eclipse.tractusx.irs/irs-registry-client/2.0.4-20240515.103302-1, Apache-2.0, approved, automotive.tractusx +maven/mavencentral/org.eclipse.tractusx.irs/irs-common/2.0.5, Apache-2.0, approved, automotive.tractusx +maven/mavencentral/org.eclipse.tractusx.irs/irs-edc-client/2.0.5, Apache-2.0, approved, automotive.tractusx +maven/mavencentral/org.eclipse.tractusx.irs/irs-models/2.0.5, Apache-2.0, approved, automotive.tractusx +maven/mavencentral/org.eclipse.tractusx.irs/irs-registry-client/2.0.5, Apache-2.0, approved, automotive.tractusx maven/mavencentral/org.eclipse.tractusx.traceability/tx-backend/0.0.1-SNAPSHOT, Apache-2.0, approved, automotive.tractusx maven/mavencentral/org.eclipse.tractusx.traceability/tx-models/0.0.1-SNAPSHOT, Apache-2.0, approved, automotive.tractusx maven/mavencentral/org.flywaydb/flyway-core/9.22.3, Apache-2.0, approved, #10349 @@ -373,8 +373,8 @@ maven/mavencentral/org.springframework/spring-web/6.1.6, Apache-2.0, approved, # maven/mavencentral/org.springframework/spring-webmvc/6.1.6, Apache-2.0, approved, #11879 maven/mavencentral/org.testcontainers/database-commons/1.19.7, Apache-2.0, approved, #10345 maven/mavencentral/org.testcontainers/jdbc/1.19.7, Apache-2.0, approved, #10348 -maven/mavencentral/org.testcontainers/junit-jupiter/1.19.7, MIT, approved, #10344 -maven/mavencentral/org.testcontainers/postgresql/1.19.7, MIT, approved, #10350 +maven/mavencentral/org.testcontainers/junit-jupiter/1.19.8, MIT, approved, #10344 +maven/mavencentral/org.testcontainers/postgresql/1.19.8, MIT, approved, #10350 maven/mavencentral/org.testcontainers/testcontainers/1.19.7, Apache-2.0 AND MIT, approved, #10347 maven/mavencentral/org.thymeleaf/thymeleaf-spring6/3.1.2.RELEASE, Apache-2.0, approved, #10581 maven/mavencentral/org.thymeleaf/thymeleaf/3.1.2.RELEASE, Apache-2.0, approved, CQ23960 diff --git a/DEPENDENCIES_FRONTEND b/DEPENDENCIES_FRONTEND index b897639c08..b997f40b9c 100644 --- a/DEPENDENCIES_FRONTEND +++ b/DEPENDENCIES_FRONTEND @@ -88,7 +88,7 @@ npm/npmjs/-/bonjour-service/1.1.1, MIT, approved, #7474 npm/npmjs/-/boolbase/1.0.0, ISC, approved, clearlydefined npm/npmjs/-/brace-expansion/1.1.11, MIT, approved, clearlydefined npm/npmjs/-/brace-expansion/2.0.1, MIT, approved, clearlydefined -npm/npmjs/-/braces/3.0.2, MIT, approved, clearlydefined +npm/npmjs/-/braces/3.0.2, MIT, approved, #14866 npm/npmjs/-/browser-process-hrtime/1.0.0, BSD-2-Clause, approved, clearlydefined npm/npmjs/-/browserslist/4.21.5, MIT, approved, #7034 npm/npmjs/-/browserslist/4.22.3, MIT, approved, #10780 diff --git a/charts/traceability-foss/Chart.yaml b/charts/traceability-foss/Chart.yaml index 4002c1c2ba..f836c15377 100644 --- a/charts/traceability-foss/Chart.yaml +++ b/charts/traceability-foss/Chart.yaml @@ -42,7 +42,7 @@ dependencies: condition: pgadmin4.enabled - name: item-relationship-service repository: https://eclipse-tractusx.github.io/item-relationship-service - version: 7.1.3 + version: 7.1.4 condition: item-relationship-service.enabled - name: tractusx-connector repository: https://eclipse-tractusx.github.io/tractusx-edc diff --git a/pom.xml b/pom.xml index ff15aae464..2f1625aac1 100644 --- a/pom.xml +++ b/pom.xml @@ -51,11 +51,11 @@ SPDX-License-Identifier: Apache-2.0 3.3.1 1.13.0 1.26.1 - 3.1.1 + 3.1.2 0.8.11 3.3.0 9.0.9 - 4.8.3.0 + 4.8.5.0 3.5.0 3.10.0.2594 3.2.5 @@ -77,7 +77,7 @@ SPDX-License-Identifier: Apache-2.0 0.2.6 0.9.4 1.1.0 - 1.19.7 + 1.19.8 5.4.0 42.6.1 2.0.4 @@ -85,12 +85,12 @@ SPDX-License-Identifier: Apache-2.0 1.3.0 4.4 1.18.32 - 3.2.2 + 3.2.7 7.17.0 5.10.2 4.2.1 - 2.0.5-SNAPSHOT + 2.0.5 5.4.0 jacoco diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/DtrService.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/DtrService.java index 4b043e6b44..9c96d3a9d4 100644 --- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/DtrService.java +++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/DtrService.java @@ -101,7 +101,7 @@ private SubmodelDescriptor toSubmodelDescriptor(String aspectType, UUID submodel .interfaceInformation("SUBMODEL-3.0") .protocolInformation( ProtocolInformation.builder() - .href(edcProperties.getProviderDataplaneEdcUrl() + "/api/public/data/" + submodelServerIdReference) + .href(edcProperties.getProviderDataplaneEdcUrl() + "/api/public/" + submodelServerIdReference) .endpointProtocol("HTTP") .endpointProtocolVersion(List.of("1.1")) .subprotocol("DSP") diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/EdcAssetCreationService.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/EdcAssetCreationService.java index 547fe5e845..8cf7aa560b 100644 --- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/EdcAssetCreationService.java +++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/importpoc/service/EdcAssetCreationService.java @@ -90,7 +90,7 @@ public String createEdcContractDefinitionsForDtrAndSubmodel(String policyId) thr String submodelAssetId; String submodelAssetIdToCreate = "urn:uuid:" + UUID.randomUUID(); try { - submodelAssetId = edcAssetService.createSubmodelAsset(traceabilityProperties.getSubmodelBase() + "/api/submodel", submodelAssetIdToCreate); + submodelAssetId = edcAssetService.createSubmodelAsset(traceabilityProperties.getSubmodelBase(), submodelAssetIdToCreate); log.info("Submodel Asset Id created :{}", submodelAssetId); } catch (EdcAssetAlreadyExistsException e) { submodelAssetId = submodelAssetIdToCreate; diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/common/config/RestTemplateConfiguration.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/common/config/RestTemplateConfiguration.java index 151bf1f6ec..77f78a8d88 100644 --- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/common/config/RestTemplateConfiguration.java +++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/common/config/RestTemplateConfiguration.java @@ -48,6 +48,7 @@ import java.time.Duration; import java.util.ArrayList; +import java.util.Collections; import java.util.List; @Configuration @@ -146,10 +147,12 @@ public RestTemplate irsRegularTemplate(@Autowired TraceabilityProperties traceab /* RestTemplate used by trace x for the submodel server*/ @Bean(SUBMODEL_REST_TEMPLATE) public RestTemplate submodelRestTemplate(@Autowired TraceabilityProperties traceabilityProperties, @Autowired FeignDefaultProperties feignDefaultProperties) { + return new RestTemplateBuilder() .rootUri(traceabilityProperties.getSubmodelBase()) .setConnectTimeout(Duration.ofMillis(feignDefaultProperties.getConnectionTimeoutMillis())) .setReadTimeout(Duration.ofMillis(feignDefaultProperties.getReadTimeoutMillis())) + .defaultHeader("Content-Type", MediaType.APPLICATION_JSON_VALUE) .build(); } diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/submodel/infrastructure/repository/SubmodelClient.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/submodel/infrastructure/repository/SubmodelClient.java index da67c22485..42b2a771e3 100644 --- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/submodel/infrastructure/repository/SubmodelClient.java +++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/submodel/infrastructure/repository/SubmodelClient.java @@ -18,15 +18,16 @@ ********************************************************************************/ package org.eclipse.tractusx.traceability.submodel.infrastructure.repository; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.http.HttpEntity; import org.springframework.http.HttpMethod; import org.springframework.stereotype.Component; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.client.RestTemplate; import static org.eclipse.tractusx.traceability.common.config.RestTemplateConfiguration.SUBMODEL_REST_TEMPLATE; +@Slf4j @Component public class SubmodelClient { @@ -38,11 +39,11 @@ public SubmodelClient(@Qualifier(SUBMODEL_REST_TEMPLATE) RestTemplate submodelRe } public void createSubmodel(String submodelId, String payload) { - submodelRestTemplate.exchange("/api/submodel/data/" + submodelId, HttpMethod.POST, new HttpEntity<>(payload), Void.class); + submodelRestTemplate.exchange("/" + submodelId, HttpMethod.POST, new HttpEntity<>(payload), Void.class); } public String getSubmodel(String submodelId) { - return submodelRestTemplate.exchange("/api/submodel/data/" + submodelId, HttpMethod.GET, null, String.class).getBody(); + return submodelRestTemplate.exchange("/" + submodelId, HttpMethod.GET, null, String.class).getBody(); } } diff --git a/tx-backend/src/main/resources/application-integration-spring-boot.yml b/tx-backend/src/main/resources/application-integration-spring-boot.yml index 6087663ac9..d62c4b4ba6 100644 --- a/tx-backend/src/main/resources/application-integration-spring-boot.yml +++ b/tx-backend/src/main/resources/application-integration-spring-boot.yml @@ -33,7 +33,7 @@ traceability: regularApiKey: testRegularKey irsBase: "http://127.0.0.1" irsPoliciesPath: "/irs/policies" - submodelBase: http://localhost:${server.port} + submodelBase: "http://localhost:${server.port}/api/submodel/data" registry: urlWithPath: "http://127.0.0.1" diff --git a/tx-backend/src/main/resources/application.yml b/tx-backend/src/main/resources/application.yml index afefa9fa91..a153ddb0e2 100644 --- a/tx-backend/src/main/resources/application.yml +++ b/tx-backend/src/main/resources/application.yml @@ -33,6 +33,7 @@ traceability: irsBase: ${IRS_URL} irsPoliciesPath: "/irs/policies" submodelBase: ${SUBMODEL_URL} + submodelPath: ${SUBMODEL_PATH} edc: ids: @@ -69,7 +70,6 @@ irs-edc-client: submodel: request-ttl: PT10M # How long to wait for an async EDC submodel retrieval to finish, ISO 8601 Duration - path: /submodel # The path to append to the submodel data reference endpoint urn-prefix: /urn # A prefix used to identify URNs correctly in the submodel endpoint address timeout: read: PT90S # HTTP read timeout for the submodel client