Skip to content

Commit

Permalink
Merge branch 'refs/heads/main' into dependabot/npm_and_yarn/frontend/…
Browse files Browse the repository at this point in the history
…socket.io-4.7.5
  • Loading branch information
ds-mwesener committed Jul 26, 2024
2 parents e7074e2 + 1d4c652 commit a309097
Show file tree
Hide file tree
Showing 39 changed files with 1,083 additions and 1,212 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/argo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -417,9 +417,9 @@ jobs:
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
elif [ "${{ github.event.inputs.environment }}" == "association 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://tracex-int-a-submodel-server.int.catena-x.net -edc https://trace-x-edc-int-a.int.catena-x.net -a https://trace-x-registry-int-a.int.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-a-dataplane.int.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_ASSOCIATION_INT }} --aas3 --edcBPN BPNL000000000UKM --allowedBPNs BPNL000000000UKM BPNL000000000DWF 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.catena-x.net -edc https://trace-x-edc-int-a.int.catena-x.net -a https://trace-x-registry-int-a.int.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-a-dataplane.int.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_ASSOCIATION_INT }} --aas3 --edcBPN BPNL000000000UKM --allowedBPNs BPNL000000000UKM BPNL000000000DWF BPNL000000000EVQ BPNL00000003CSGV
sleep 10
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.catena-x.net -edc https://trace-x-edc-int-b.int.catena-x.net -a https://trace-x-registry-int-b.int.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-b-dataplane.int.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_ASSOCIATION_INT }} --aas3 --edcBPN BPNL000000000DWF --allowedBPNs BPNL000000000DWF BPNL000000000UKM 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.catena-x.net -edc https://trace-x-edc-int-b.int.catena-x.net -a https://trace-x-registry-int-b.int.catena-x.net/semantics/registry/api/v3 -d https://trace-x-edc-int-b-dataplane.int.catena-x.net -p traceability-core -k ${{ secrets.TRACE_X_API_KEY_ASSOCIATION_INT }} --aas3 --edcBPN BPNL000000000DWF --allowedBPNs BPNL000000000DWF BPNL000000000UKM BPNL000000000EVQ BPNL00000003CSGV
sleep 10
fi
elif [ "${{ github.event.inputs.testdata_upload }}" == "false" ]; then
Expand Down
100 changes: 100 additions & 0 deletions .github/workflows/xray-cucumber-association.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# Copyright (c) 2024 Contributors to the Eclipse Foundation
#
# 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

name: "[BE][TEST][E2E] Cucumber - Association"

on:
workflow_dispatch: # Trigger manually
schedule:
- cron: "0 0 * * *"

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

- name: Cache maven packages
uses: actions/cache@v4
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2

- name: Download Feature Files
id: download
env:
JIRA_USERNAME: ${{ secrets.ASSOCIATION_TX_JIRA_USERNAME }}
JIRA_PASSWORD: ${{ secrets.ASSOCIATION_TX_JIRA_PASSWORD }}
# JIRA filter 11349: project = "[TR] FOSS - Open Source (Impl.)" AND issuetype = Test AND "Test Type" = Cucumber AND status = Ready AND labels = INTEGRATION_TEST AND (environment ~ DEV OR environment ~ "INT")
# Downloads all feature files of cucumber tests inside TRI project
run: |
token=$(curl -H "Content-Type: application/json" -X POST \
--data "{ \"client_id\": \"$JIRA_USERNAME\",\"client_secret\": \"$JIRA_PASSWORD\" }" \
https://xray.cloud.getxray.app/api/v2/authenticate | tr -d '"')
export HTTP_RESULT=$(curl -s --show-error -w "%{http_code}" --header "Authorization: Bearer $token" \
"https://xray.cloud.getxray.app/api/v2/export/cucumber?filter=10005&fz=true" -o features.zip)
[[ $HTTP_RESULT == 200 || $HTTP_RESULT == 400 ]]
echo "::set-output name=http_response::$HTTP_RESULT"
- name: install tx-models
run: mvn install -pl tx-models

# Required step due to fact that jira will name feature files differently with each feature added and that will cause duplicate test runs
- name: Cleanup repository feature files
if: ${{ steps.download.outputs.http_response == '200' }}
#working-directory: tx-cucumber-tests
run: |
rm -r tx-cucumber-tests/src/test/resources/features/*
- name: Build with Maven
if: ${{ steps.download.outputs.http_response == '200' }}
env:
KEYCLOAK_HOST: ${{ secrets.ASSOCIATION_KEYCLOAK_HOST }}
SUPERVISOR_CLIENT_ID: ${{ secrets.ASSOCIATION_SUPERVISOR_CLIENT_ID }}
SUPERVISOR_PASSWORD: ${{ secrets.ASSOCIATION_SUPERVISOR_PASSWORD }}
E2E_TXA_HOST: ${{ secrets.ASSOCIATION_E2E_TXA_HOST }}
E2E_TXB_HOST: ${{ secrets.ASSOCIATION_E2E_TXB_HOST }}
#working-directory: tx-cucumber-tests
run: |
unzip -o tx-cucumber-tests/features.zip -d tx-cucumber-tests/src/test/resources/features
mvn -pl tx-models,tx-cucumber-tests --batch-mode clean install -D"cucumber.filter.tags"="@trace-x-automated" -P association
- name: Submit results to Xray
if: ${{ always() && steps.download.outputs.http_response == '200' }}
env:
JIRA_USERNAME: ${{ secrets.ASSOCIATION_TX_JIRA_USERNAME }}
JIRA_PASSWORD: ${{ secrets.ASSOCIATION_TX_JIRA_PASSWORD }}
run: |
token=$(curl -H "Content-Type: application/json" -X POST \
--data "{ \"client_id\": \"$JIRA_USERNAME\",\"client_secret\": \"$JIRA_PASSWORD\" }" \
https://xray.cloud.getxray.app/api/v2/authenticate | tr -d '"')
curl --request POST \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $token" \
--data-binary '@tx-cucumber-tests/report.json' \
"https://xray.cloud.getxray.app/api/v2/import/execution/cucumber"
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ _**For better traceability add the corresponding GitHub issue number in each cha
- XXXX added workflow to import testdata

### Changed
- #1108 Rework of data sov documentation
- #1070 Correct semantic model in dev/README.md
- #1070 Update documentation artefacts according to TRG 1 - Documentation
- #1070 Convert png to svg according to TRG 1.04 - Diagrams as code / Editable static files
Expand Down
4 changes: 2 additions & 2 deletions dev/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,13 +80,13 @@ python transform-and-upload.py -f CX_Testdata_MessagingTest_v0.0.12.json -s http
Sample invocation (ASSOCIATION INT A)

```
python transform-and-upload.py -f CX_Testdata_MessagingTest_v0.0.12.json -s https://traceability-int-a.int.catena-x.net/api/submodel -edc https://trace-x-edc-int-a.int.catena-x.net -a https://trace-x-registry-int-a.int.catena-x.net/semantics/registry/api/v3.0 -d https://trace-x-edc-int-a-dataplane.int.catena-x.net -p id-3.0-trace -k <apiKey> --aas3 --edcBPN BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV --allowedBPNs BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV
python transform-and-upload.py -f CX_Testdata_MessagingTest_v0.0.12.json -s https://traceability-int-a.int.catena-x.net/api/submodel -edc https://trace-x-edc-int-a.int.catena-x.net -a https://trace-x-registry-int-a.int.catena-x.net/semantics/registry/api/v3.0 -d https://trace-x-edc-int-a-dataplane.int.catena-x.net -p id-3.0-trace -k <apiKey> --aas3 --edcBPN BPNL000000000UKM BPNL000000000DWF BPNL000000000EVQ BPNL00000003CSGV --allowedBPNs BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV
```

Sample invocation (ASSOCIATION INT B)

```
python transform-and-upload.py -f CX_Testdata_MessagingTest_v0.0.12.json -s https://traceability-int-b.int.catena-x.net/api/submodel -edc https://trace-x-edc-int-b.int.catena-x.net -a https://trace-x-registry-int-b.int.catena-x.net/semantics/registry/api/v3.0 -d https://trace-x-edc-int-b-dataplane.int.catena-x.net -p id-3.0-trace -k <apiKey> --aas3 --edcBPN BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV --allowedBPNs BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV
python transform-and-upload.py -f CX_Testdata_MessagingTest_v0.0.12.json -s https://traceability-int-b.int.catena-x.net/api/submodel -edc https://trace-x-edc-int-b.int.catena-x.net -a https://trace-x-registry-int-b.int.catena-x.net/semantics/registry/api/v3.0 -d https://trace-x-edc-int-b-dataplane.int.catena-x.net -p id-3.0-trace -k <apiKey> --aas3 --edcBPN BPNL000000000UKM BPNL000000000DWF BPNL000000000EVQ BPNL00000003CSGV --allowedBPNs BPNL000000000UKM BPNL000000000DWF BPNL00000003AZQP BPNL00000003CSGV
```

where:
Expand Down

This file was deleted.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,47 +1,54 @@
@startuml
title
==GET api/contracts/{tx-assetId}
== Request ContractResponse (Contract Agreements)
end title

autonumber "<B>[00]"

participant "Trace-X Frontend" as FE order 0
participant "Trace-X Backend" as BE order 1
participant "Trace-X Database" as DB order 2
participant "EDC" as TXEDC order 3

FE -> BE: GET api/contracts/{tx-assetId}

activate BE
BE -> DB: Take contractAgreementId for tx-assetId
activate DB
autonumber stop
DB --> BE: contractAgreementId
autonumber resume
deactivate DB

BE -> TXEDC: GET tx-edc/management/v2/contractagreements/{contractAgreementId}
activate TXEDC
autonumber stop
TXEDC --> BE: JSON response
autonumber resume
deactivate TXEDC
BE -> BE: Extract contractSigningDate, policy
activate BE
skinparam monochrome true
skinparam shadowing false
skinparam defaultFontName "Architects daughter"
skinparam linetype ortho

participant "Trace-X \n Frontend" as FE order 0
participant "Trace-X \n Backend" as BE order 1
participant "Trace-X \n Database" as DB order 2
participant "EDC \n ManagementAPI" as TXEDC order 3

FE -> BE: Request for ContractResponse
note left
GET /contracts by filterExpression
end note

loop for each contract agreement
activate BE
BE -> DB: Query contractAgreementId for assetId
activate DB
DB --> BE: result contractAgreementId
deactivate DB

BE -> TXEDC: GET contractagreements
note left
GET edc/management/v2/contractagreements/{contractAgreementId}
end note
activate TXEDC
TXEDC --> BE: return contract agreements
deactivate TXEDC
BE -> BE: Extract contractSigningDate, policy
activate BE
deactivate BE

BE -> TXEDC: GET edc/management/v2/contractagreements/{contractAgreementId}/negotiation
activate TXEDC
TXEDC --> BE: Gets a contract negotiation with the given contract agreement ID
deactivate TXEDC
BE -> BE: Extract id, counterPartyAddress, state
activate BE
BE -> BE : Create ContractResponse
deactivate BE

end loop

BE --> FE: List of ContractResponses for filterExpression
deactivate BE

BE -> TXEDC: GET tx-edc/management/v2/contractagreements/{contractAgreementId}/negotiation
activate TXEDC
autonumber stop
TXEDC --> BE: JSON response
autonumber resume
deactivate TXEDC
BE -> BE: Extract id, counterPartyAddress, state
activate BE
deactivate BE

autonumber stop
BE --> FE: JSON response
deactivate BE

@enduml
Loading

0 comments on commit a309097

Please sign in to comment.