From fe5186e0f4bde1934927f10eee96219784fb3715 Mon Sep 17 00:00:00 2001 From: Sandeep Nishad Date: Fri, 26 May 2023 17:55:36 +0530 Subject: [PATCH] feat: corda asset transfer test workflow added and bug fixes - fix(weaver): corda asset transfer bug fix with decoding interop payload - fix(corda-driver): dockerfile build bug - fix(corda-sdk): fix bug with logs and error messages - fix(weaver): update alice and bob cert for asset transfer - fix(corda): simpleapp initialize ledger dynamically based on number of nodes - fix(sdk): increase default timeout for interopFlow - feat(ci): add debug logs to data sharing and asset transfer - chore(testnet): check-in alice and bob certs for fabric networks Signed-off-by: Sandeep Nishad --- .gitguardian.yaml | 4 + .../test_weaver-asset-exchange-corda.yaml | 8 +- .../workflows/test_weaver-asset-transfer.yaml | 933 ++++++++++++++---- .../workflows/test_weaver-data-sharing.yaml | 124 ++- .../workflows/test_weaver-docker-build.yaml | 4 +- .github/workflows/weaver_deploy_node-pkgs.yml | 4 +- .../drivers/corda-driver/Dockerfile.remote | 6 + .../imodule/corda/flows/AssetTransferFlows.kt | 7 +- .../client/AssetTransferManager.kt | 3 +- .../credentials/network1/access-control.json | 12 +- .../network1/access-control.json | 12 +- .../network1_UsersAndCerts.json | 2 +- .../network2_UsersAndCerts.json | 2 +- .../corda/corda-simple-application/makefile | 22 +- .../scripts/initNetworkId.sh | 24 + weaver/samples/fabric/fabric-cli/.gitignore | 6 +- .../fabric/fabric-cli/scripts/createUsers.sh | 7 + .../fabric/fabric-cli/scripts/initAsset.sh | 6 +- .../fabric/fabric-cli/scripts/initAssetN1.sh | 4 +- .../scripts/initAssetsForTransfer.sh | 2 - .../network1_UsersAndCerts.json | 2 +- .../network2_UsersAndCerts.json | 2 +- .../fabric-cli/src/wallet-network1/alice.id | 1 + .../fabric-cli/src/wallet-network1/bob.id | 1 + .../fabric-cli/src/wallet-network2/alice.id | 1 + .../fabric-cli/src/wallet-network2/bob.id | 1 + .../weaver/sdk/corda/InteroperableHelper.kt | 61 +- .../src/EventsManager.ts | 8 +- .../src/InteroperableHelper.ts | 2 +- .../interoperation-node-sdk/src/Relay.ts | 8 +- .../interoperation-node-sdk/test/Relay.js | 2 +- .../channel-artifacts/Org1MSPanchors.tx | Bin 313 -> 313 bytes .../channel-artifacts/Org2MSPanchors.tx | Bin 313 -> 313 bytes .../channel-artifacts/mychannel.block | Bin 22621 -> 22621 bytes .../network1/channel-artifacts/mychannel.tx | Bin 447 -> 447 bytes .../fabric-ca/org1/fabric-ca-server.db | Bin 69632 -> 69632 bytes .../channel-artifacts/Org1MSPanchors.tx | Bin 313 -> 313 bytes .../channel-artifacts/Org2MSPanchors.tx | Bin 313 -> 313 bytes .../channel-artifacts/mychannel.block | Bin 22616 -> 22616 bytes .../network2/channel-artifacts/mychannel.tx | Bin 447 -> 447 bytes .../fabric-ca/org1/fabric-ca-server.db | Bin 69632 -> 69632 bytes .../network-setups/fabric/shared/README.md | 1 + 42 files changed, 982 insertions(+), 300 deletions(-) create mode 100644 weaver/samples/corda/corda-simple-application/scripts/initNetworkId.sh create mode 100755 weaver/samples/fabric/fabric-cli/scripts/createUsers.sh create mode 100644 weaver/samples/fabric/fabric-cli/src/wallet-network1/alice.id create mode 100644 weaver/samples/fabric/fabric-cli/src/wallet-network1/bob.id create mode 100644 weaver/samples/fabric/fabric-cli/src/wallet-network2/alice.id create mode 100644 weaver/samples/fabric/fabric-cli/src/wallet-network2/bob.id diff --git a/.gitguardian.yaml b/.gitguardian.yaml index c418cc9071..3f2ea65018 100644 --- a/.gitguardian.yaml +++ b/.gitguardian.yaml @@ -24,6 +24,10 @@ secret: - 'doc/*' - 'LICENSE' - '**/examples/cactus-example-carbon-accounting-backend/example-config.json' + - 'weaver/samples/**/*' + - 'weaver/tests/**/*' + - 'weaver/core/drivers/fabric-driver/wallet-network1/*.id' + - 'weaver/core/drivers/fabric-driver/wallet-network2/*.id' # Detectors to ignore. ignored-detectors: # default: [] diff --git a/.github/workflows/test_weaver-asset-exchange-corda.yaml b/.github/workflows/test_weaver-asset-exchange-corda.yaml index 9ce202838e..d7c083c860 100644 --- a/.github/workflows/test_weaver-asset-exchange-corda.yaml +++ b/.github/workflows/test_weaver-asset-exchange-corda.yaml @@ -46,12 +46,12 @@ jobs: echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties - echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/weaver-dlt-interoperability" >> github.properties + echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/cacti" >> github.properties echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.main.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties - echo "url=https://maven.pkg.github.com/hyperledger-labs/weaver-dlt-interoperability" >> github.main.properties + echo "url=https://maven.pkg.github.com/hyperledger/cacti" >> github.main.properties ./scripts/get-cordapps.sh || mv github.main.properties github.properties @@ -236,12 +236,12 @@ jobs: echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties - echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/weaver-dlt-interoperability" >> github.properties + echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/cacti" >> github.properties echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.main.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties - echo "url=https://maven.pkg.github.com/hyperledger-labs/weaver-dlt-interoperability" >> github.main.properties + echo "url=https://maven.pkg.github.com/hyperledger/cacti" >> github.main.properties ./scripts/get-cordapps.sh || mv github.main.properties github.properties diff --git a/.github/workflows/test_weaver-asset-transfer.yaml b/.github/workflows/test_weaver-asset-transfer.yaml index e8e211b570..9924c0ab7c 100644 --- a/.github/workflows/test_weaver-asset-transfer.yaml +++ b/.github/workflows/test_weaver-asset-transfer.yaml @@ -33,11 +33,11 @@ jobs: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3.5.2 - # - name: Set up JDK 8 - # uses: actions/setup-java@v3.11.0 - # with: - # java-version: '8' - # distribution: 'adopt' + - name: Set up JDK 8 + uses: actions/setup-java@v3.11.0 + with: + java-version: '8' + distribution: 'adopt' - name: Set up Go uses: actions/setup-go@v4.0.0 @@ -50,39 +50,40 @@ jobs: node-version: 14.x # CORDA NETWORK - # - name: Generate github.properties - # run: | - # echo "Using ${GITHUB_ACTOR} user." - # echo "username=${GITHUB_ACTOR}" >> github.properties - # echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties - # echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/weaver-dlt-interoperability" >> github.properties - # - # echo "Using ${GITHUB_ACTOR} user." - # echo "username=${GITHUB_ACTOR}" >> github.main.properties - # echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties - # echo "url=https://maven.pkg.github.com/hyperledger-labs/weaver-dlt-interoperability" >> github.main.properties - # - # ./scripts/get-cordapps.sh || mv github.main.properties github.properties - # - # cat github.properties - # working-directory: weaver/tests/network-setups/corda - # - # - name: Start Corda Network - # run: | - # sed -i "/docker logs corda_partya_1 -f/"' s/^/#/' "scripts/start-nodes.sh" - # make start &> corda-net.out & - # working-directory: weaver/tests/network-setups/corda + - name: Generate github.properties + run: | + echo "Using ${GITHUB_ACTOR} user." + echo "username=${GITHUB_ACTOR}" >> github.properties + echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties + echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/cacti" >> github.properties + + echo "Using ${GITHUB_ACTOR} user." + echo "username=${GITHUB_ACTOR}" >> github.main.properties + echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties + echo "url=https://maven.pkg.github.com/hyperledger/cacti" >> github.main.properties + + ./scripts/get-cordapps.sh || mv github.main.properties github.properties + + cat github.properties + working-directory: weaver/tests/network-setups/corda + + - name: Start Corda Network + run: | + sed -i "/docker logs corda_partya_1 -f/"' s/^/#/' "scripts/start-nodes.sh" + make start &> corda-net.out & + working-directory: weaver/tests/network-setups/corda # FABRIC NETWORK - name: Start Fabric Network run: make start-interop CHAINCODE_NAME=simpleassettransfer PROFILE='2-nodes' working-directory: weaver/tests/network-setups/fabric/dev - # - name: Corda Network logs - # run: | - # cat tests/network-setups/corda/corda-net.out - # docker logs corda_partya_1 - # working-directory: weaver + - name: Corda Network logs + run: | + cat tests/network-setups/corda/corda-net.out + docker logs corda_partya_1 + docker logs corda_network2_partya_1 + working-directory: weaver # RELAY - name: Edit Relay docker compose @@ -97,13 +98,13 @@ jobs: run: make start-server COMPOSE_ARG='--env-file docker/testnet-envs/.env.n2' working-directory: weaver/core/relay - # - name: Start Relay for Corda_Network - # run: make start-server COMPOSE_ARG='--env-file docker/testnet-envs/.env.corda' - # working-directory: weaver/core/relay - # - # - name: Start Relay for Corda_Network2 - # run: make start-server COMPOSE_ARG='--env-file docker/testnet-envs/.env.corda2' - # working-directory: weaver/core/relay + - name: Start Relay for Corda_Network + run: make start-server COMPOSE_ARG='--env-file docker/testnet-envs/.env.corda' + working-directory: weaver/core/relay + + - name: Start Relay for Corda_Network2 + run: make start-server COMPOSE_ARG='--env-file docker/testnet-envs/.env.corda2' + working-directory: weaver/core/relay # FABRIC DRIVER - name: Setup Fabric Driver .env @@ -150,13 +151,13 @@ jobs: working-directory: weaver/core/identity-management/iin-agent # CORDA DRIVER - # - name: Start Corda Driver - # run: make deploy COMPOSE_ARG='--env-file docker-testnet-envs/.env.corda' - # working-directory: weaver/core/drivers/corda-driver - # - # - name: Start Corda_Network2 Driver - # run: make deploy COMPOSE_ARG='--env-file docker-testnet-envs/.env.corda2' - # working-directory: weaver/core/drivers/corda-driver + - name: Start Corda Driver + run: make deploy COMPOSE_ARG='--env-file docker-testnet-envs/.env.corda' + working-directory: weaver/core/drivers/corda-driver + + - name: Start Corda_Network2 Driver + run: make deploy COMPOSE_ARG='--env-file docker-testnet-envs/.env.corda2' + working-directory: weaver/core/drivers/corda-driver # FABRIC CLI - name: Setup Fabric CLI .npmrc @@ -225,72 +226,86 @@ jobs: working-directory: weaver/samples/fabric/fabric-cli # CORDA CLIENT - # - name: Corda CLI Setup - # run: | - # cp remote-network-config.json.template remote-network-config.json - # sed -i "s#localhost:9080#relay-network1:9080#g" remote-network-config.json - # sed -i "s#localhost:9081#relay-corda:9081#g" remote-network-config.json - # sed -i "s#localhost:9082#relay-corda2:9082#g" remote-network-config.json - # sed -i "s#localhost:9083#relay-network2:9083#g" remote-network-config.json - # sed -i "s#localhost:10006#corda_partya_1:10003#g" remote-network-config.json - # sed -i "s#localhost:30006#corda_network2_partya_1:10003#g" remote-network-config.json - # working-directory: weaver/samples/corda/corda-simple-application/clients/src/main/resources/config - # - # - name: Corda CLI Initialize Vault - # run: make initialise-vault-asset-transfer-docker - # working-directory: weaver/samples/corda/corda-simple-application - - # - name: Data Transfer Corda Client Tests - # run: | - # COUNT=0 - # TOTAL=8 - # - # # CORDA-CORDA2 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 relay-corda2:9082/Corda_Network2/corda_network2_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:H 1> tmp.out - # cat tmp.out | grep "SimpleState(key=H, value=\[SimpleState(key=H, value=1" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state H 1> tmp.out - # cat tmp.out | grep "SimpleState(key=H, value=\[SimpleState(key=H, value=1" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA2-CORDA - # - # NETWORK_NAME=Corda_Network2 CORDA_PORT=30006 ./clients/build/install/clients/bin/clients request-state localhost:9082 relay-corda:9081/Corda_Network/corda_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:C 1> tmp.out - # cat tmp.out | grep "SimpleState(key=C, value=\[SimpleState(key=C, value=20" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # NETWORK_NAME=Corda_Network2 CORDA_PORT=30006 ./clients/build/install/clients/bin/clients get-state C 1> tmp.out - # cat tmp.out | grep "SimpleState(key=C, value=\[SimpleState(key=C, value=20" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA - FABRIC1 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 relay-network1:9080/network1/mychannel:simplestate:Read:a 1> tmp.out - # tail -n 1 tmp.out | grep "SimpleState(key=a, value=Arcturus" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state a 1> tmp.out - # tail -n 1 tmp.out | grep "SimpleState(key=a, value=Arcturus" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA - FABRIC2 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 relay-network2:9083/network2/mychannel:simplestate:Read:Arcturus 1> tmp.out - # tail -n 1 tmp.out | grep "SimpleState(key=Arcturus, value=17.671" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state Arcturus 1> tmp.out - # tail -n 1 tmp.out | grep "SimpleState(key=Arcturus, value=17.671" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # RESULT - # echo "Passed $COUNT/$TOTAL Tests." - # - # if [ $COUNT == $TOTAL ]; then - # exit 0 - # else - # exit 1 - # fi - # working-directory: weaver/samples/corda/corda-simple-application + - name: Corda CLI Setup + run: | + cp remote-network-config.json.template remote-network-config.json + sed -i "s#localhost:9080#relay-network1:9080#g" remote-network-config.json + sed -i "s#localhost:9081#relay-corda:9081#g" remote-network-config.json + sed -i "s#localhost:9082#relay-corda2:9082#g" remote-network-config.json + sed -i "s#localhost:9083#relay-network2:9083#g" remote-network-config.json + sed -i "s#localhost:10006#corda_partya_1:10003#g" remote-network-config.json + sed -i "s#localhost:30006#corda_network2_partya_1:10003#g" remote-network-config.json + working-directory: weaver/samples/corda/corda-simple-application/clients/src/main/resources/config + + - name: Corda CLI Initialize Vault + run: make initialise-vault-asset-transfer-docker + working-directory: weaver/samples/corda/corda-simple-application + + - name: Asset Transfer Corda Client Tests + run: | + COUNT=0 + TOTAL=9 + + # Issue t1:5 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 t1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t1, owner=O=PartyA" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # CORDA2-CORDA + # Pledge Asset + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="3600" --import-network-id='Corda_Network2' --recipient='O=PartyA, L=London, C=GB' --param='t1:5' 1> tmp.out + cat tmp.out | grep "AssetPledgeState created with pledge-id" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: true" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # Claim Remote Asset + NETWORK_NAME='Corda_Network2' CORDA_PORT=30006 ./clients/build/install/clients/bin/clients transfer claim-remote-asset --pledge-id=$PID --locker='O=PartyA, L=London, C=GB' --transfer-category='token.corda' --export-network-id='Corda_Network' --param='t1:5' --import-relay-address='localhost:9082' 1> tmp.out + cat tmp.out | grep "Pledged asset claim response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t1 1> tmp.out + cat tmp.out | grep "\[\]" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + CORDA_PORT=30006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # CORDA-CORDA2 + + # Issue and Pledge t2:5 tokens + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 t2 1> tmp.out + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="20" --import-network-id='Corda_Network2' --recipient='O=PartyA, L=London, C=GB' --param='t2:5' 1> tmp.out + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + sleep 20 + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: false" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + NETWORK_NAME=Corda_Network CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer reclaim-pledged-asset --pledge-id=$PID --export-relay-address='localhost:9081' --transfer-category='token.corda' --import-network-id='Corda_Network2' --param='t2:5' 1> tmp.out + cat tmp.out | grep "Pledged Asset Reclaim Response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t2 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t2, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + working-directory: weaver/samples/corda/corda-simple-application # FABRIC CLI - name: Asset Transfer Fabric CLI Non-Fungible Tests @@ -409,6 +424,238 @@ jobs: exit 1 fi working-directory: weaver/samples/fabric/fabric-cli + + + # CORDA - FABRIC + - name: Corda - Fabric Asset Transfer test 1 - Pledge + run: | + COUNT=0 + TOTAL=2 + + # CORDA - FABRIC1 + # Issue and Pledge token1:5 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 token1 1> tmp.out + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="3600" --import-network-id='network1' --recipient='alice' --param='token1:5' 1> tmp.out + cat tmp.out | grep "AssetPledgeState created with pledge-id" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: true" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + echo "CF_PID=$PID" >> $GITHUB_ENV + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Corda - Fabric Asset Transfer test 2 - Claim + run: | + COUNT=0 + TOTAL=3 + + PID=${{ env.CF_PID }} + + # CORDA - FABRIC1 + # Claim in Fabric (pledged in Corda) + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9950\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli asset transfer claim --source-network='Corda_Network' --dest-network=network1 --user='alice' --owner='O=PartyA, L=London, C=GB' --type='token.corda' --pledge-id=$PID --param=token1:5 &> tmp.out + tail -n 1 tmp.out | grep "Called Function ClaimRemoteTokenAsset. With Args: $PID" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9955\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: Corda - Fabric Asset Transfer test 3 - Reclaim + run: | + COUNT=0 + TOTAL=3 + + # CORDA - FABRIC1 + # Issue and Pledge token1:10 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 10 token1 1> tmp.out + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="20" --import-network-id='network1' --recipient='alice' --param='token1:10' 1> tmp.out + sleep 20 + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: false" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + NETWORK_NAME=Corda_Network CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer reclaim-pledged-asset --pledge-id=$PID --export-relay-address='localhost:9081' --transfer-category='token.fabric' --import-network-id='network1' --param='token1:10' 1> tmp.out + cat tmp.out | grep "Pledged Asset Reclaim Response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type token1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=10, tokenType=token1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Fabric - Corda Asset Transfer test 1 - Pledge + run: | + COUNT=0 + TOTAL=1 + + ./bin/fabric-cli asset transfer pledge --source-network='network1' --dest-network='Corda_Network' --recipient='O=PartyA, L=London, C=GB' --expiry-secs=3600 --type='token' --units=50 --owner=alice --data-file=src/data/tokensForTransfer.json &> tmp.out + + PID=$(cat tmp.out | grep "Asset pledged with ID " | sed -e 's/Asset pledged with ID //') + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9905\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + sleep 30 + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + echo "FC_PID=$PID" >> $GITHUB_ENV + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: Fabric - Corda Asset Transfer test 2 - Claim + run: | + COUNT=0 + TOTAL=2 + + PID=${{ env.FC_PID }} + + # FABRIC - CORDA + # Claim Remote Asset + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer claim-remote-asset --pledge-id=$PID --locker='alice' --transfer-category='token.fabric' --export-network-id='network1' --param='token1:50' --import-relay-address='localhost:9082' 1> tmp.out + cat tmp.out | grep "Pledged asset claim response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type token1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=50, tokenType=token1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Fabric - Corda Asset Transfer test 3 - Reclaim + run: | + COUNT=0 + TOTAL=3 + + ./bin/fabric-cli asset transfer pledge --source-network='network1' --dest-network='Corda_Network' --recipient='O=PartyA, L=London, C=GB' --expiry-secs=30 --type='token' --units=50 --owner=alice --data-file=src/data/tokensForTransfer.json &> tmp.out + PID=$(cat tmp.out | grep "Asset pledged with ID " | sed -e 's/Asset pledged with ID //') + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9855\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + sleep 30 + + ./bin/fabric-cli asset transfer reclaim --source-network='network1' --user='alice' --type='token.corda' --pledge-id=$PID --param=token1:50 &> tmp.out + tail -n 1 tmp.out | grep "Called Function ReclaimTokenAsset. With Args: $PID" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9905\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: DEBUG Logs - corda partya + if: failure() + run: docker logs corda_partya_1 + + - name: DEBUG Logs - corda network2 partya + if: failure() + run: docker logs corda_network2_partya_1 + + - name: DEBUG Logs - fabric n1 relay + if: failure() + run: docker logs relay-network1 + + - name: DEBUG Logs - fabric n2 relay + if: failure() + run: docker logs relay-network2 + + - name: DEBUG Logs - corda relay + if: failure() + run: docker logs relay-corda + + - name: DEBUG Logs - corda2 relay + if: failure() + run: docker logs relay-corda2 + + - name: DEBUG Logs - fabric n1 driver + if: failure() + run: docker logs driver-fabric-network1 + + - name: DEBUG Logs - fabric n2 driver + if: failure() + run: docker logs driver-fabric-network2 + + - name: DEBUG Logs - corda driver + if: failure() + run: docker logs driver-corda-Corda_Network + + - name: DEBUG Logs - corda2 driver + if: failure() + run: docker logs driver-corda-Corda_Network2 asset-transfer-fabric-local: # if: ${{ false }} @@ -420,11 +667,11 @@ jobs: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3.5.2 - # - name: Set up JDK 8 - # uses: actions/setup-java@v3.11.0 - # with: - # java-version: '8' - # distribution: 'adopt' + - name: Set up JDK 8 + uses: actions/setup-java@v3.11.0 + with: + java-version: '8' + distribution: 'adopt' - name: Set up Go uses: actions/setup-go@v4.0.0 @@ -471,22 +718,22 @@ jobs: make build working-directory: weaver/common/protos-js - # - name: Build Java Protos - # run: make build - # working-directory: weaver/common/protos-java-kt + - name: Build Java Protos + run: make build + working-directory: weaver/common/protos-java-kt # Build Dependencies - # - name: Build Corda Interop App - # run: make build-local - # working-directory: weaver/core/network/corda-interop-app - # - # - name: Build Corda Interop SDK - # run: make build - # working-directory: weaver/sdks/corda - # - # - name: Build Corda SimpleApplication - # run: make build-local - # working-directory: weaver/samples/corda/corda-simple-application + - name: Build Corda Interop App + run: make build-local + working-directory: weaver/core/network/corda-interop-app + + - name: Build Corda Interop SDK + run: make build + working-directory: weaver/sdks/corda + + - name: Build Corda SimpleApplication + run: make build-local + working-directory: weaver/samples/corda/corda-simple-application - name: Build Fabric Interop SDK run: make build-local @@ -508,16 +755,16 @@ jobs: run: make build-local working-directory: weaver/core/identity-management/iin-agent - # - name: Build Corda Driver - # run: make build-local - # working-directory: weaver/core/drivers/corda-driver - # - # # CORDA NETWORK - # - name: Start Corda Network - # run: | - # sed -i "/docker logs corda_partya_1 -f/"' s/^/#/' "scripts/start-nodes.sh" - # make start-local &> corda-net.out & - # working-directory: weaver/tests/network-setups/corda + - name: Build Corda Driver + run: make build-local + working-directory: weaver/core/drivers/corda-driver + + # CORDA NETWORK + - name: Start Corda Network + run: | + sed -i "/docker logs corda_partya_1 -f/"' s/^/#/' "scripts/start-nodes.sh" + make start-local &> corda-net.out & + working-directory: weaver/tests/network-setups/corda # FABRIC NETWORK @@ -525,11 +772,12 @@ jobs: run: make start-interop-local CHAINCODE_NAME=simpleassettransfer working-directory: weaver/tests/network-setups/fabric/dev - # - name: Corda Network logs - # run: | - # cat tests/network-setups/corda/corda-net.out - # docker logs corda_partya_1 - # working-directory: weaver + - name: Corda Network logs + run: | + cat tests/network-setups/corda/corda-net.out + docker logs corda_partya_1 + docker logs corda_network2_partya_1 + working-directory: weaver # RELAY - name: Start Relay for network1 @@ -540,13 +788,13 @@ jobs: run: RELAY_CONFIG=config/Fabric_Relay2.toml cargo run --bin server &> relay-n2.out & working-directory: weaver/core/relay - # - name: Start Relay for Corda_Network - # run: RELAY_CONFIG=config/Corda_Relay.toml cargo run --bin server &> relay-corda.out & - # working-directory: weaver/core/relay - # - # - name: Start Relay for Corda_Network2 - # run: RELAY_CONFIG=config/Corda_Relay2.toml cargo run --bin server &> relay-corda2.out & - # working-directory: weaver/core/relay + - name: Start Relay for Corda_Network + run: RELAY_CONFIG=config/Corda_Relay.toml cargo run --bin server &> relay-corda.out & + working-directory: weaver/core/relay + + - name: Start Relay for Corda_Network2 + run: RELAY_CONFIG=config/Corda_Relay2.toml cargo run --bin server &> relay-corda2.out & + working-directory: weaver/core/relay # FABRIC DRIVER - name: Setup Fabric Driver .env @@ -603,14 +851,14 @@ jobs: run: IIN_AGENT_ENDPOINT=localhost:9501 SECURITY_DOMAIN=network2 CONFIG_PATH=./src/fabric-ledger/config-n2.json npm run dev &> iinagent-n2.out & working-directory: weaver/core/identity-management/iin-agent - # # CORDA DRIVER - # - name: Start Corda_Network Driver - # run: ./build/install/corda-driver/bin/corda-driver &> corda-driver.out & - # working-directory: weaver/core/drivers/corda-driver - # - # - name: Start Corda_Network2 Driver - # run: DRIVER_PORT=9098 ./build/install/corda-driver/bin/corda-driver &> corda2-driver.out & - # working-directory: weaver/core/drivers/corda-driver + # CORDA DRIVER + - name: Start Corda_Network Driver + run: ./build/install/driver-corda/bin/driver-corda &> corda-driver.out & + working-directory: weaver/core/drivers/corda-driver + + - name: Start Corda_Network2 Driver + run: DRIVER_PORT=9098 ./build/install/driver-corda/bin/driver-corda &> corda2-driver.out & + working-directory: weaver/core/drivers/corda-driver # FABRIC CLI - name: Setup Fabric CLI ENV @@ -659,62 +907,81 @@ jobs: tail -10 ../../../core/identity-management/iin-agent/iinagent-n2.out working-directory: weaver/samples/fabric/fabric-cli - # # CORDA CLIENT - # - name: Corda CLI Initialize Vault - # run: make initialise-vault - # working-directory: weaver/samples/corda/corda-simple-application - # - # - name: Data Transfer Corda Client Tests - # run: | - # COUNT=0 - # TOTAL=8 - # - # # CORDA-CORDA2 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 localhost:9082/Corda_Network2/localhost:30006#com.cordaSimpleApplication.flow.GetStateByKey:H 1> tmp.out - # cat tmp.out | grep "SimpleState(key=H, value=\[SimpleState(key=H, value=1" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state H 1> tmp.out - # cat tmp.out | grep "SimpleState(key=H, value=\[SimpleState(key=H, value=1" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA2-CORDA - # - # NETWORK_NAME=Corda_Network2 CORDA_PORT=30006 ./clients/build/install/clients/bin/clients request-state localhost:9082 localhost:9081/Corda_Network/localhost:10006#com.cordaSimpleApplication.flow.GetStateByKey:C 1> tmp.out - # cat tmp.out | grep "SimpleState(key=C, value=\[SimpleState(key=C, value=20" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # NETWORK_NAME=Corda_Network2 CORDA_PORT=30006 ./clients/build/install/clients/bin/clients get-state C 1> tmp.out - # cat tmp.out | grep "SimpleState(key=C, value=\[SimpleState(key=C, value=20" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA - FABRIC1 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 localhost:9080/network1/mychannel:simplestate:Read:a 1> tmp.out - # cat tmp.out | grep "SimpleState(key=a, value=Arcturus" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state a 1> tmp.out - # cat tmp.out | grep "SimpleState(key=a, value=Arcturus" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # CORDA - FABRIC2 - # ./clients/build/install/clients/bin/clients request-state localhost:9081 localhost:9083/network2/mychannel:simplestate:Read:Arcturus 1> tmp.out - # cat tmp.out | grep "SimpleState(key=Arcturus, value=17.671" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # ./clients/build/install/clients/bin/clients get-state Arcturus 1> tmp.out - # cat tmp.out | grep "SimpleState(key=Arcturus, value=17.671" && COUNT=$(( COUNT + 1 )) && echo "PASS" - # cat tmp.out - # - # # RESULT - # echo "Passed $COUNT/$TOTAL Tests." - # - # if [ $COUNT == $TOTAL ]; then - # exit 0 - # else - # exit 1 - # fi - # working-directory: weaver/samples/corda/corda-simple-application + # CORDA CLIENT + - name: Corda CLI Setup + run: | + cp remote-network-config.json.template remote-network-config.json + working-directory: weaver/samples/corda/corda-simple-application/clients/src/main/resources/config + + - name: Corda CLI Initialize Vault + run: make initialise-vault-asset-transfer + working-directory: weaver/samples/corda/corda-simple-application + + - name: Asset Transfer Corda Client Tests + run: | + COUNT=0 + TOTAL=9 + + # Issue t1:5 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 t1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t1, owner=O=PartyA" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # CORDA2-CORDA + # Pledge Asset + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="3600" --import-network-id='Corda_Network2' --recipient='O=PartyA, L=London, C=GB' --param='t1:5' 1> tmp.out + cat tmp.out | grep "AssetPledgeState created with pledge-id" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: true" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # Claim Remote Asset + NETWORK_NAME='Corda_Network2' CORDA_PORT=30006 ./clients/build/install/clients/bin/clients transfer claim-remote-asset --pledge-id=$PID --locker='O=PartyA, L=London, C=GB' --transfer-category='token.corda' --export-network-id='Corda_Network' --param='t1:5' --import-relay-address='localhost:9082' 1> tmp.out + cat tmp.out | grep "Pledged asset claim response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t1 1> tmp.out + cat tmp.out | grep "\[\]" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + CORDA_PORT=30006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # CORDA-CORDA2 + + # Issue and Pledge t2:5 tokens + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 t2 1> tmp.out + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="20" --import-network-id='Corda_Network2' --recipient='O=PartyA, L=London, C=GB' --param='t2:5' 1> tmp.out + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + sleep 20 + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: false" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + NETWORK_NAME=Corda_Network CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer reclaim-pledged-asset --pledge-id=$PID --export-relay-address='localhost:9081' --transfer-category='token.corda' --import-network-id='Corda_Network2' --param='t2:5' 1> tmp.out + cat tmp.out | grep "Pledged Asset Reclaim Response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type t2 1> tmp.out + cat tmp.out | grep "AssetState(quantity=5, tokenType=t2, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + working-directory: weaver/samples/corda/corda-simple-application # FABRIC CLI - name: Asset Transfer Fabric CLI Non-Fungible Tests @@ -833,3 +1100,235 @@ jobs: exit 1 fi working-directory: weaver/samples/fabric/fabric-cli + + + # CORDA - FABRIC + - name: Corda - Fabric Asset Transfer test 1 - Pledge + run: | + COUNT=0 + TOTAL=2 + + # CORDA - FABRIC1 + # Issue and Pledge token1:5 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 5 token1 1> tmp.out + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="3600" --import-network-id='network1' --recipient='alice' --param='token1:5' 1> tmp.out + cat tmp.out | grep "AssetPledgeState created with pledge-id" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: true" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + echo "CF_PID=$PID" >> $GITHUB_ENV + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Corda - Fabric Asset Transfer test 2 - Claim + run: | + COUNT=0 + TOTAL=3 + + PID=${{ env.CF_PID }} + + # CORDA - FABRIC1 + # Claim in Fabric (pledged in Corda) + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9950\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli asset transfer claim --source-network='Corda_Network' --dest-network=network1 --user='alice' --owner='O=PartyA, L=London, C=GB' --type='token.corda' --pledge-id=$PID --param=token1:5 &> tmp.out + tail -n 1 tmp.out | grep "Called Function ClaimRemoteTokenAsset. With Args: $PID" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9955\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: Corda - Fabric Asset Transfer test 3 - Reclaim + run: | + COUNT=0 + TOTAL=3 + + # CORDA - FABRIC1 + # Issue and Pledge token1:10 tokens to partyA + NETWORK_NAME='Corda_Network' CORDA_PORT=10006 ./clients/build/install/clients/bin/clients issue-asset-state 10 token1 1> tmp.out + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer pledge-asset --fungible --timeout="20" --import-network-id='network1' --recipient='alice' --param='token1:10' 1> tmp.out + sleep 20 + + PID=$(cat tmp.out | grep "AssetPledgeState created with pledge-id " | awk -F "'" '{print $2}') + + # Is Asset Pledged + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer is-asset-pledged -pid $PID 1> tmp.out + cat tmp.out | grep "Is asset pledged for transfer response: false" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + NETWORK_NAME=Corda_Network CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer reclaim-pledged-asset --pledge-id=$PID --export-relay-address='localhost:9081' --transfer-category='token.fabric' --import-network-id='network1' --param='token1:10' 1> tmp.out + cat tmp.out | grep "Pledged Asset Reclaim Response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type token1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=10, tokenType=token1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Fabric - Corda Asset Transfer test 1 - Pledge + run: | + COUNT=0 + TOTAL=1 + + ./bin/fabric-cli asset transfer pledge --source-network='network1' --dest-network='Corda_Network' --recipient='O=PartyA, L=London, C=GB' --expiry-secs=3600 --type='token' --units=50 --owner=alice --data-file=src/data/tokensForTransfer.json &> tmp.out + + PID=$(cat tmp.out | grep "Asset pledged with ID " | sed -e 's/Asset pledged with ID //') + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9905\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + sleep 30 + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + echo "FC_PID=$PID" >> $GITHUB_ENV + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: Fabric - Corda Asset Transfer test 2 - Claim + run: | + COUNT=0 + TOTAL=2 + + PID=${{ env.FC_PID }} + + # FABRIC - CORDA + # Claim Remote Asset + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients transfer claim-remote-asset --pledge-id=$PID --locker='alice' --transfer-category='token.fabric' --export-network-id='network1' --param='token1:50' --import-relay-address='localhost:9082' 1> tmp.out + cat tmp.out | grep "Pledged asset claim response: Right(b=SignedTransaction(id=" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + CORDA_PORT=10006 ./clients/build/install/clients/bin/clients get-asset-states-by-type token1 1> tmp.out + cat tmp.out | grep "AssetState(quantity=50, tokenType=token1, owner=O=PartyA, L=London, C=GB, " && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/corda/corda-simple-application + + - name: Fabric - Corda Asset Transfer test 3 - Reclaim + run: | + COUNT=0 + TOTAL=3 + + ./bin/fabric-cli asset transfer pledge --source-network='network1' --dest-network='Corda_Network' --recipient='O=PartyA, L=London, C=GB' --expiry-secs=30 --type='token' --units=50 --owner=alice --data-file=src/data/tokensForTransfer.json &> tmp.out + PID=$(cat tmp.out | grep "Asset pledged with ID " | sed -e 's/Asset pledged with ID //') + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9855\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + sleep 30 + + ./bin/fabric-cli asset transfer reclaim --source-network='network1' --user='alice' --type='token.corda' --pledge-id=$PID --param=token1:50 &> tmp.out + tail -n 1 tmp.out | grep "Called Function ReclaimTokenAsset. With Args: $PID" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + ./bin/fabric-cli chaincode query --user=alice mychannel simpleassettransfer GetMyWallet '[]' --local-network=network1 &> tmp.out + tail -n 2 tmp.out | grep "Result from network query: token1=\"9905\"" && COUNT=$(( COUNT + 1 )) && echo "PASS" + cat tmp.out + + # RESULT + echo "Passed $COUNT/$TOTAL Tests." + + if [ $COUNT == $TOTAL ]; then + exit 0 + else + exit 1 + fi + + working-directory: weaver/samples/fabric/fabric-cli + + - name: DEBUG Logs - corda partya + if: failure() + run: docker logs corda_partya_1 + + - name: DEBUG Logs - corda network2 partya + if: failure() + run: docker logs corda_network2_partya_1 + + - name: DEBUG Logs - fabric n1 relay + if: failure() + run: cat weaver/core/relay/relay-n1.out + + - name: DEBUG Logs - fabric n2 relay + if: failure() + run: cat weaver/core/relay/relay-n2.out + + - name: DEBUG Logs - corda relay + if: failure() + run: cat weaver/core/relay/relay-corda.out + + - name: DEBUG Logs - corda2 relay + if: failure() + run: cat weaver/core/relay/relay-corda2.out + + - name: DEBUG Logs - fabric n1 driver + if: failure() + run: cat weaver/core/drivers/fabric-driver/fdriver-n1.out + + - name: DEBUG Logs - fabric n2 driver + if: failure() + run: cat weaver/core/drivers/fabric-driver/fdriver-n2.out + + - name: DEBUG Logs - corda driver + if: failure() + run: cat weaver/core/drivers/corda-driver/corda-driver.out + + - name: DEBUG Logs - corda2 driver + if: failure() + run: cat weaver/core/drivers/corda-driver/corda2-driver.out \ No newline at end of file diff --git a/.github/workflows/test_weaver-data-sharing.yaml b/.github/workflows/test_weaver-data-sharing.yaml index cc14453242..fc4d0c839f 100644 --- a/.github/workflows/test_weaver-data-sharing.yaml +++ b/.github/workflows/test_weaver-data-sharing.yaml @@ -55,12 +55,12 @@ jobs: echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties - echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/weaver-dlt-interoperability" >> github.properties + echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/cacti" >> github.properties echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.main.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties - echo "url=https://maven.pkg.github.com/hyperledger-labs/weaver-dlt-interoperability" >> github.main.properties + echo "url=https://maven.pkg.github.com/hyperledger/cacti" >> github.main.properties ./scripts/get-cordapps.sh || mv github.main.properties github.properties @@ -337,6 +337,46 @@ jobs: exit 1 fi working-directory: weaver/samples/fabric/fabric-cli + + - name: DEBUG Logs - corda partya + if: failure() + run: docker logs corda_partya_1 + + - name: DEBUG Logs - corda network2 partya + if: failure() + run: docker logs corda_network2_partya_1 + + - name: DEBUG Logs - fabric n1 relay + if: failure() + run: docker logs relay-network1 + + - name: DEBUG Logs - fabric n2 relay + if: failure() + run: docker logs relay-network2 + + - name: DEBUG Logs - corda relay + if: failure() + run: docker logs relay-corda + + - name: DEBUG Logs - corda2 relay + if: failure() + run: docker logs relay-corda2 + + - name: DEBUG Logs - fabric n1 driver + if: failure() + run: docker logs driver-fabric-network1 + + - name: DEBUG Logs - fabric n2 driver + if: failure() + run: docker logs driver-fabric-network2 + + - name: DEBUG Logs - corda driver + if: failure() + run: docker logs driver-corda-Corda_Network + + - name: DEBUG Logs - corda2 driver + if: failure() + run: docker logs driver-corda-Corda_Network2 data-sharing-docker-local: # if: ${{ false }} @@ -703,6 +743,46 @@ jobs: exit 1 fi working-directory: weaver/samples/fabric/fabric-cli + + - name: DEBUG Logs - corda partya + if: failure() + run: docker logs corda_partya_1 + + - name: DEBUG Logs - corda network2 partya + if: failure() + run: docker logs corda_network2_partya_1 + + - name: DEBUG Logs - fabric n1 relay + if: failure() + run: docker logs relay-network1 + + - name: DEBUG Logs - fabric n2 relay + if: failure() + run: docker logs relay-network2 + + - name: DEBUG Logs - corda relay + if: failure() + run: docker logs relay-corda + + - name: DEBUG Logs - corda2 relay + if: failure() + run: docker logs relay-corda2 + + - name: DEBUG Logs - fabric n1 driver + if: failure() + run: docker logs driver-fabric-network1 + + - name: DEBUG Logs - fabric n2 driver + if: failure() + run: docker logs driver-fabric-network2 + + - name: DEBUG Logs - corda driver + if: failure() + run: docker logs driver-corda-Corda_Network + + - name: DEBUG Logs - corda2 driver + if: failure() + run: docker logs driver-corda-Corda_Network2 data-sharing-local: # if: ${{ false }} @@ -1073,3 +1153,43 @@ jobs: exit 1 fi working-directory: weaver/samples/fabric/fabric-cli + + - name: DEBUG Logs - corda partya + if: failure() + run: docker logs corda_partya_1 + + - name: DEBUG Logs - corda network2 partya + if: failure() + run: docker logs corda_network2_partya_1 + + - name: DEBUG Logs - fabric n1 relay + if: failure() + run: cat weaver/core/relay/relay-n1.out + + - name: DEBUG Logs - fabric n2 relay + if: failure() + run: cat weaver/core/relay/relay-n2.out + + - name: DEBUG Logs - corda relay + if: failure() + run: cat weaver/core/relay/relay-corda.out + + - name: DEBUG Logs - corda2 relay + if: failure() + run: cat weaver/core/relay/relay-corda2.out + + - name: DEBUG Logs - fabric n1 driver + if: failure() + run: cat weaver/core/drivers/fabric-driver/fdriver-n1.out + + - name: DEBUG Logs - fabric n2 driver + if: failure() + run: cat weaver/core/drivers/fabric-driver/fdriver-n2.out + + - name: DEBUG Logs - corda driver + if: failure() + run: cat weaver/core/drivers/corda-driver/corda-driver.out + + - name: DEBUG Logs - corda2 driver + if: failure() + run: cat weaver/core/drivers/corda-driver/corda2-driver.out diff --git a/.github/workflows/test_weaver-docker-build.yaml b/.github/workflows/test_weaver-docker-build.yaml index 675df4ea50..35e1044f0f 100644 --- a/.github/workflows/test_weaver-docker-build.yaml +++ b/.github/workflows/test_weaver-docker-build.yaml @@ -114,12 +114,12 @@ jobs: echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties - echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/weaver-dlt-interoperability" >> github.properties + echo "url=https://maven.pkg.github.com/${GITHUB_ACTOR}/cacti" >> github.properties echo "Using ${GITHUB_ACTOR} user." echo "username=${GITHUB_ACTOR}" >> github.main.properties echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.main.properties - echo "url=https://maven.pkg.github.com/hyperledger-labs/weaver-dlt-interoperability" >> github.main.properties + echo "url=https://maven.pkg.github.com/hyperledger/cacti" >> github.main.properties make build || mv github.main.properties github.properties make clean diff --git a/.github/workflows/weaver_deploy_node-pkgs.yml b/.github/workflows/weaver_deploy_node-pkgs.yml index fd78702fca..02fd8214aa 100644 --- a/.github/workflows/weaver_deploy_node-pkgs.yml +++ b/.github/workflows/weaver_deploy_node-pkgs.yml @@ -61,7 +61,9 @@ jobs: - name: Publish if: ${{ env.PROTOS_JS_PUBLISH == 'true' }} - run: make publish + run: | + export PATH="$PATH:${GITHUB_WORKSPACE}/protoc/bin" + make publish working-directory: weaver/common/protos-js publish-fabric-sdk: diff --git a/weaver/core/drivers/corda-driver/Dockerfile.remote b/weaver/core/drivers/corda-driver/Dockerfile.remote index 7a968b23c1..1cce32d620 100644 --- a/weaver/core/drivers/corda-driver/Dockerfile.remote +++ b/weaver/core/drivers/corda-driver/Dockerfile.remote @@ -2,6 +2,12 @@ FROM gradle:4.10.3-jdk8 AS builder-remote USER root + +#Update stretch repositories +RUN sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list +RUN sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list +RUN sed -i '/stretch-updates/d' /etc/apt/sources.list + RUN apt-get update && apt-get install -y maven WORKDIR /driver/corda diff --git a/weaver/core/network/corda-interop-app/interop-workflows/src/main/kotlin/org/hyperledger/cacti/weaver/imodule/corda/flows/AssetTransferFlows.kt b/weaver/core/network/corda-interop-app/interop-workflows/src/main/kotlin/org/hyperledger/cacti/weaver/imodule/corda/flows/AssetTransferFlows.kt index dde5b99c53..9ea4b5ac62 100644 --- a/weaver/core/network/corda-interop-app/interop-workflows/src/main/kotlin/org/hyperledger/cacti/weaver/imodule/corda/flows/AssetTransferFlows.kt +++ b/weaver/core/network/corda-interop-app/interop-workflows/src/main/kotlin/org/hyperledger/cacti/weaver/imodule/corda/flows/AssetTransferFlows.kt @@ -14,6 +14,7 @@ import org.hyperledger.cacti.weaver.imodule.corda.states.AssetClaimStatusState import org.hyperledger.cacti.weaver.imodule.corda.states.NetworkIdState import org.hyperledger.cacti.weaver.protos.common.asset_transfer.AssetTransfer import org.hyperledger.cacti.weaver.protos.corda.ViewDataOuterClass +import org.hyperledger.cacti.weaver.protos.common.interop_payload.InteropPayloadOuterClass import com.google.protobuf.ByteString import net.corda.core.contracts.ContractState @@ -474,7 +475,8 @@ object ReclaimPledgedAsset { val viewData = subFlow(GetExternalStateByLinearId(claimStatusLinearId)) val externalStateView = ViewDataOuterClass.ViewData.parseFrom(viewData) - val payloadDecoded = Base64.getDecoder().decode(externalStateView.notarizedPayloadsList[0].payload.toByteArray()) + val interopPayload = InteropPayloadOuterClass.InteropPayload.parseFrom(externalStateView.notarizedPayloadsList[0].payload) + val payloadDecoded = Base64.getDecoder().decode(interopPayload.payload.toByteArray()) val assetClaimStatus = AssetTransfer.AssetClaimStatus.parseFrom(payloadDecoded) println("Asset claim status details obtained via interop query: ${assetClaimStatus}") @@ -683,7 +685,8 @@ object ClaimRemoteAsset { // get the asset pledge details fetched earlier via interop query from import to export n/w val viewData = subFlow(GetExternalStateByLinearId(pledgeStatusLinearId)) val externalStateView = ViewDataOuterClass.ViewData.parseFrom(viewData) - val payloadDecoded = Base64.getDecoder().decode(externalStateView.notarizedPayloadsList[0].payload.toByteArray()) + val interopPayload = InteropPayloadOuterClass.InteropPayload.parseFrom(externalStateView.notarizedPayloadsList[0].payload) + val payloadDecoded = Base64.getDecoder().decode(interopPayload.payload.toByteArray()) val assetPledgeStatus = AssetTransfer.AssetPledge.parseFrom(payloadDecoded) println("Asset pledge status details obtained via interop query: ${assetPledgeStatus}") println("getAssetAndContractIdFlowName: ${getAssetAndContractIdFlowName} assetIdOrQuantity: ${assetIdOrQuantity}") diff --git a/weaver/samples/corda/corda-simple-application/clients/src/main/kotlin/com/cordaSimpleApplication/client/AssetTransferManager.kt b/weaver/samples/corda/corda-simple-application/clients/src/main/kotlin/com/cordaSimpleApplication/client/AssetTransferManager.kt index 193cc02e11..ff7a0c2587 100644 --- a/weaver/samples/corda/corda-simple-application/clients/src/main/kotlin/com/cordaSimpleApplication/client/AssetTransferManager.kt +++ b/weaver/samples/corda/corda-simple-application/clients/src/main/kotlin/com/cordaSimpleApplication/client/AssetTransferManager.kt @@ -621,6 +621,7 @@ fun requestStateFromRemoteNetwork( config["RELAY_TLSCA_CERT_PATHS"]!! ).fold({ println("Error in Interop Flow: ${it.message}") + exitProcess(1) }, { linearId = it.toString() println("Interop flow successful and external-state was stored with linearId $linearId.\n") @@ -632,4 +633,4 @@ fun requestStateFromRemoteNetwork( } return linearId -} \ No newline at end of file +} diff --git a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials/network1/access-control.json b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials/network1/access-control.json index 11a24ba473..f2feef9ecd 100644 --- a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials/network1/access-control.json +++ b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials/network1/access-control.json @@ -14,37 +14,37 @@ "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#net.corda.samples.tokenizedhouse.flows.GetAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#net.corda.samples.tokenizedhouse.flows.GetAssetClaimStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#com.cordaSimpleApplication.flow.GetAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#com.cordaSimpleApplication.flow.GetAssetClaimStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#com.cordaSimpleApplication.flow.GetBondAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "localhost:10006#com.cordaSimpleApplication.flow.GetBondAssetClaimStatusByPledgeId:*", "read": true diff --git a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials_docker/network1/access-control.json b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials_docker/network1/access-control.json index 832a6aa62b..6d06621631 100644 --- a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials_docker/network1/access-control.json +++ b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/credentials_docker/network1/access-control.json @@ -14,37 +14,37 @@ "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#net.corda.samples.tokenizedhouse.flows.GetAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#net.corda.samples.tokenizedhouse.flows.GetAssetClaimStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#com.cordaSimpleApplication.flow.GetAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#com.cordaSimpleApplication.flow.GetAssetClaimStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#com.cordaSimpleApplication.flow.GetBondAssetPledgeStatusByPledgeId:*", "read": true }, { - "principal": "-----BEGIN CERTIFICATE-----\nMIICdzCCAh6gAwIBAgIUPConm+pX/FtlNjLN5anYArhcdEwwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIyMDMwNzEwMTAwMFoXDTIzMDMwNzEwMTUwMFowQjEwMA0G\nA1UECxMGY2xpZW50MAsGA1UECxMEb3JnMTASBgNVBAsTC2RlcGFydG1lbnQxMQ4w\nDAYDVQQDEwVhbGljZTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGlZIN10U6um\nPxXdfKMSbObZP1qGiUIwR1UzkRtH7890JFr5qtFYg3zAscyHBArKlbfB60Pu/1EE\nmcnlIdFIUayjgcswgcgwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYD\nVR0OBBYEFEAxp9BDcqN7y1GG8TPbn30f3a0rMB8GA1UdIwQYMBaAFHKG9YL6OC86\ny5FIXpqte7bOXSD8MGgGCCoDBAUGBwgBBFx7ImF0dHJzIjp7ImhmLkFmZmlsaWF0\naW9uIjoib3JnMS5kZXBhcnRtZW50MSIsImhmLkVucm9sbG1lbnRJRCI6ImFsaWNl\nIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNHADBEAiAZppRvg5nl\nkRArO6AWBFlIjytDvxvB9AltPZoTmU9/TgIgCnsSTB0JYKe9WELZiYDU6w1VIpCA\nqhzqJXoV5nStSBQ=\n-----END CERTIFICATE-----\n", + "principal": "-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUSEpVss30wfY5hsJZ3c1s69cZT9IwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MjkxMjEz\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAAQkG+POzAiF+cCwlRJjWSE/2uu7udNhbmkEMiChs6pYxHnOKiHQwAYenFAW/jfi\nmwzucL8njMBEQy5tVw2sfJWko4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBT4BRDdVj+oRuS1lGYXh7ZWr5QzDTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhAN3Ep7HXKx0ledmraQkgK2UmzUXDQjLVunpr0YzT68uLAiArUtSsLTgOFSUv\nhrG8VVa8EzTPv7yo0Y0nGPhunUJ/MA==\n-----END CERTIFICATE-----\n", "principalType": "ca", "resource": "corda_partya_1:10003#com.cordaSimpleApplication.flow.GetBondAssetClaimStatusByPledgeId:*", "read": true diff --git a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network1_UsersAndCerts.json b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network1_UsersAndCerts.json index 6bd0528b15..07fe80748e 100644 --- a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network1_UsersAndCerts.json +++ b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network1_UsersAndCerts.json @@ -1 +1 @@ -{"alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNkekNDQWg2Z0F3SUJBZ0lVUENvbm0rcFgvRnRsTmpMTjVhbllBcmhjZEV3d0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TURNd056RXdNVEF3TUZvWERUSXpNRE13TnpFd01UVXdNRm93UWpFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVE0dwpEQVlEVlFRREV3VmhiR2xqWlRCWk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkdsWklOMTBVNnVtClB4WGRmS01TYk9iWlAxcUdpVUl3UjFVemtSdEg3ODkwSkZyNXF0RllnM3pBc2N5SEJBcktsYmZCNjBQdS8xRUUKbWNubElkRklVYXlqZ2Nzd2djZ3dEZ1lEVlIwUEFRSC9CQVFEQWdlQU1Bd0dBMVVkRXdFQi93UUNNQUF3SFFZRApWUjBPQkJZRUZFQXhwOUJEY3FON3kxR0c4VFBibjMwZjNhMHJNQjhHQTFVZEl3UVlNQmFBRkhLRzlZTDZPQzg2Cnk1RklYcHF0ZTdiT1hTRDhNR2dHQ0NvREJBVUdCd2dCQkZ4N0ltRjBkSEp6SWpwN0ltaG1Ma0ZtWm1sc2FXRjAKYVc5dUlqb2liM0puTVM1a1pYQmhjblJ0Wlc1ME1TSXNJbWhtTGtWdWNtOXNiRzFsYm5SSlJDSTZJbUZzYVdObApJaXdpYUdZdVZIbHdaU0k2SW1Oc2FXVnVkQ0o5ZlRBS0JnZ3Foa2pPUFFRREFnTkhBREJFQWlBWnBwUnZnNW5sCmtSQXJPNkFXQkZsSWp5dER2eHZCOUFsdFBab1RtVTkvVGdJZ0Nuc1NUQjBKWUtlOVdFTFppWURVNncxVklwQ0EKcWh6cUpYb1Y1blN0U0JRPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="} \ No newline at end of file +{"alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNnakNDQWlpZ0F3SUJBZ0lVWHNQY1hON1RBbEg4M2kxR1l3MjRCWHVDdjFBd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeExtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN4TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFEwTURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FSXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU9NQXdHQTFVRUF4TUZZV3hwWTJVd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DCkFBVFFFcHBOQ2tEdHZzeGhiRHpjSTNuVzlsZHc4eEFYcVZ5L0lWS0xPemRFNFI4SExWeGlFWU1TTWJKQWlRRFgKQ0YwdzB3Vlg3eTk4SzU1Lzc3RlVtS1FWbzRITE1JSElNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQgpBZjhFQWpBQU1CMEdBMVVkRGdRV0JCUll6MmRvSXBma25CRVRaUkxlSnRvNEhVZ25wVEFmQmdOVkhTTUVHREFXCmdCUmpuTGY3SWc3UldXZkhNU2tnZ3hyUE01aGJyekJvQmdncUF3UUZCZ2NJQVFSY2V5SmhkSFJ5Y3lJNmV5Sm8KWmk1QlptWnBiR2xoZEdsdmJpSTZJbTl5WnpFdVpHVndZWEowYldWdWRERWlMQ0pvWmk1RmJuSnZiR3h0Wlc1MApTVVFpT2lKaGJHbGpaU0lzSW1obUxsUjVjR1VpT2lKamJHbGxiblFpZlgwd0NnWUlLb1pJemowRUF3SURTQUF3ClJRSWhBTkp4OUpQVjAyVm8zcFpVdFBSR1hBdjNocUZ3TkY2ZXBxT3Nrc2pXQ0RrQ0FpQnVQV3FOM09OSi9pVCsKT0h5TXJ2TlZrMnJFZldmMXNoZDNoUHpNRU45SXd3PT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=","bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNmakNDQWlTZ0F3SUJBZ0lVQWcxWFJCc1BiRVV6dDNmYlVaUmZuUFgxeUs0d0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeExtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN4TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFEwTURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FQXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU1NQW9HQTFVRUF4TURZbTlpTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFClNxZ0pDUWFxNlJablBEVENxdlJiSFdZWVJrYkF5MkhheExrV2ZZMEdrUTZVYmZuMkdKU3NNak5qSVVHdCtvNzEKNzMwN1FPMHZIZ3VwV01zaVpaYUhNcU9CeVRDQnhqQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVXYwYmhKenZpUnZPRVFjaHBKZE5CT0JSVGxNRXdId1lEVlIwakJCZ3dGb0FVClk1eTMreUlPMFZsbnh6RXBJSU1henpPWVc2OHdaZ1lJS2dNRUJRWUhDQUVFV25zaVlYUjBjbk1pT25zaWFHWXUKUVdabWFXeHBZWFJwYjI0aU9pSnZjbWN4TG1SbGNHRnlkRzFsYm5ReElpd2lhR1l1Ulc1eWIyeHNiV1Z1ZEVsRQpJam9pWW05aUlpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSjlmVEFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUVBCjFWYzRWUmZXcTVBWFBNS0xCZVI5WWV0S2pXMWlWbG9VL0RFdFkwTVB6NklDSURRSWlHcWhUM0RZSzVJdFF2VDAKR1RCVFdpWElDdG84eDVUR3RrZHZvQUJ6Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"} diff --git a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network2_UsersAndCerts.json b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network2_UsersAndCerts.json index 5e8ad191ac..91a7fb7d28 100644 --- a/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network2_UsersAndCerts.json +++ b/weaver/samples/corda/corda-simple-application/clients/src/main/resources/config/remoteNetworkUsers/network2_UsersAndCerts.json @@ -1 +1 @@ -{"bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNjekNDQWhxZ0F3SUJBZ0lVSC9idGp4TmgrTUZobmtJTlV4OG84clBVZVg4d0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TURNd056RXdNVEF3TUZvWERUSXpNRE13TnpFd01UVXdNRm93UURFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVF3dwpDZ1lEVlFRREV3TmliMkl3V1RBVEJnY3Foa2pPUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVJ4SmErYnRNQlJSdmswCm5FajZlQWRpemFPby9EZG9WUlN4bTlyNHo1WmFNL2J3blFkTjFPVFFscDBoaUlHdUdqS0VVdEVaVHJEcnhSYkcKUDZpbUlJSjBvNEhKTUlIR01BNEdBMVVkRHdFQi93UUVBd0lIZ0RBTUJnTlZIUk1CQWY4RUFqQUFNQjBHQTFVZApEZ1FXQkJSeG5xdmtYSXhHUWxGazFyemhpbzNuY3huaW16QWZCZ05WSFNNRUdEQVdnQlM1eEcwRFhmVldQbkE1CmtnNzg2c1NOSENpWjhUQm1CZ2dxQXdRRkJnY0lBUVJhZXlKaGRIUnljeUk2ZXlKb1ppNUJabVpwYkdsaGRHbHYKYmlJNkltOXlaekV1WkdWd1lYSjBiV1Z1ZERFaUxDSm9aaTVGYm5KdmJHeHRaVzUwU1VRaU9pSmliMklpTENKbwpaaTVVZVhCbElqb2lZMnhwWlc1MEluMTlNQW9HQ0NxR1NNNDlCQU1DQTBjQU1FUUNJSDd2S01lL3pCcUNKSTlxCkxUemVBK09ubC9rUmVIRmRVMVZRZmNoRWZrV0VBaUFvWjlUQVRPREJpd2luUkoxWkpER05KTTBzRFR4V3B1ckIKbUg0TnAzMHBjZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"} +{"bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNmakNDQWlTZ0F3SUJBZ0lVWnBRVjgvVDFNYSthcjFldjQwSTczK05EWkY0d0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeUxtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN5TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFE0TURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FQXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU1NQW9HQTFVRUF4TURZbTlpTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFClhJVmJGSWpxU1dLQk15dTcwY3k1OTNOMUFCNXYvRlV2VmdVQ1N2L3dzNmVtRk4rVmtKU1JFVEpvamN4cmhON1IKbE5mRUJrdXdxamVuWUhhengzOS9rcU9CeVRDQnhqQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVUJ1S2JWdjhrc3NteWtwUGVQRmN2ZzMwWXNVVXdId1lEVlIwakJCZ3dGb0FVCjJ0Z2ZEOXovK093UFg3QUNITExlNzhKSzJaY3daZ1lJS2dNRUJRWUhDQUVFV25zaVlYUjBjbk1pT25zaWFHWXUKUVdabWFXeHBZWFJwYjI0aU9pSnZjbWN4TG1SbGNHRnlkRzFsYm5ReElpd2lhR1l1Ulc1eWIyeHNiV1Z1ZEVsRQpJam9pWW05aUlpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSjlmVEFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUVBCjJnUllmbm5KZEw0ajQ2S1ZDb1R1L1ZORWdhZWp5dVRQMlRaOHlWSkYzSWdDSUdjc2tTaGpXeFAzRGdtcXJPZGgKVTE1ekpzaG0vMTJlZk5zdWxEYlh6QW1oCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K","alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNnakNDQWlpZ0F3SUJBZ0lVQysyTXoxNjRVbEVxc2ZPZkZqTzZXRDFPMXBNd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeUxtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN5TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFE0TURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FSXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU9NQXdHQTFVRUF4TUZZV3hwWTJVd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DCkFBUkxOem5hNW1OaGFQbk1COUdSQVdJaWxqTytSME5nTHNPUnoxQnVMYXR4eDg1cDRQNmorS1dTMXV5NjRtNGYKcE91NHlXV3NDNUF4UDNxUk1kVzAyclEzbzRITE1JSElNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQgpBZjhFQWpBQU1CMEdBMVVkRGdRV0JCVERxQWJUeVgwc0xHR1RxcitHazFMdHF0cTNPREFmQmdOVkhTTUVHREFXCmdCVGEyQjhQM1AvNDdBOWZzQUljc3Q3dndrclpsekJvQmdncUF3UUZCZ2NJQVFSY2V5SmhkSFJ5Y3lJNmV5Sm8KWmk1QlptWnBiR2xoZEdsdmJpSTZJbTl5WnpFdVpHVndZWEowYldWdWRERWlMQ0pvWmk1RmJuSnZiR3h0Wlc1MApTVVFpT2lKaGJHbGpaU0lzSW1obUxsUjVjR1VpT2lKamJHbGxiblFpZlgwd0NnWUlLb1pJemowRUF3SURTQUF3ClJRSWhBS2JFZVFUTzV2UVFISitmNzBQNm4zQmYrL3FGWHEyZkZ3RlRPQVhDQnBhSkFpQmowM3BxQVF5eENqa1AKQngraU55VGU2QzNEZmpVU0pUcitPU1V3bXhEcThRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="} diff --git a/weaver/samples/corda/corda-simple-application/makefile b/weaver/samples/corda/corda-simple-application/makefile index 32bcddb6bc..81704a4ab8 100644 --- a/weaver/samples/corda/corda-simple-application/makefile +++ b/weaver/samples/corda/corda-simple-application/makefile @@ -52,27 +52,25 @@ test: github.properties .PHONY: initialise-vault initialise-vault: - (docker logs corda_partya_1 && REMOTE_FLOW="localhost:30006#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true - (docker logs corda_network2_partya_1 && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 REMOTE_FLOW="localhost:10006#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true + (docker logs corda_partya_1 > /dev/null && REMOTE_FLOW="localhost:30006#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true + (docker logs corda_network2_partya_1 > /dev/null && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 REMOTE_FLOW="localhost:10006#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true .PHONY: initialise-vault-docker initialise-vault-docker: - (docker logs corda_partya_1 && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" REMOTE_FLOW="corda_network2_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" LOCAL_FLOW="corda_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true - (docker logs corda_network2_partya_1 && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" REMOTE_FLOW="corda_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" LOCAL_FLOW="corda_network2_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true + (docker logs corda_partya_1 > /dev/null && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" REMOTE_FLOW="corda_network2_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" LOCAL_FLOW="corda_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true + (docker logs corda_network2_partya_1 > /dev/null && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" REMOTE_FLOW="corda_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" LOCAL_FLOW="corda_network2_partya_1:10003#com.cordaSimpleApplication.flow.GetStateByKey:*" ./clients/build/install/clients/bin/clients configure all) || true .PHONY: initialise-vault-asset-transfer initialise-vault-asset-transfer: - (docker logs corda_partya_1 && ./clients/build/install/clients/bin/clients configure network) || true - (docker logs corda_partya_1 && ./clients/build/install/clients/bin/clients network-id create-state -m "O=PartyA, L=London, C=GB;O=PartyB, L=London, C=GB") || true - (docker logs corda_network2_partya_1 && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients configure network) || true - (docker logs corda_network2_partya_1 && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients network-id create-state -m "O=PartyA, L=London, C=GB;O=PartyB, L=London, C=GB") || true + (docker logs corda_partya_1 > /dev/null && ./clients/build/install/clients/bin/clients configure network) || true + (docker logs corda_network2_partya_1 > /dev/null && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients configure network) || true + bash scripts/initNetworkId.sh .PHONY: initialise-vault-asset-transfer-docker initialise-vault-asset-transfer-docker: - (docker logs corda_partya_1 && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" ./clients/build/install/clients/bin/clients configure network) || true - (docker logs corda_partya_1 && ./clients/build/install/clients/bin/clients network-id create-state -m "O=PartyA, L=London, C=GB;O=PartyB, L=London, C=GB") || true - (docker logs corda_network2_partya_1 && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients configure network) || true - (docker logs corda_network2_partya_1 && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients network-id create-state -m "O=PartyA, L=London, C=GB;O=PartyB, L=London, C=GB") || true + (docker logs corda_partya_1 > /dev/null && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" ./clients/build/install/clients/bin/clients configure network) || true + (docker logs corda_network2_partya_1 > /dev/null && MEMBER_CREDENTIAL_FOLDER="clients/src/main/resources/config/credentials_docker" CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients configure network) || true + bash scripts/initNetworkId.sh .PHONY: get-access-control-policies get-access-control-policies: diff --git a/weaver/samples/corda/corda-simple-application/scripts/initNetworkId.sh b/weaver/samples/corda/corda-simple-application/scripts/initNetworkId.sh new file mode 100644 index 0000000000..4c61740af1 --- /dev/null +++ b/weaver/samples/corda/corda-simple-application/scripts/initNetworkId.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +MEMBERS="" + +docker logs corda_partya_1 > /dev/null && MEMBERS+="O=PartyA, L=London, C=GB;" +docker logs corda_partyb_1 > /dev/null && MEMBERS+="O=PartyB, L=London, C=GB;" +docker logs corda_partyc_1 > /dev/null && MEMBERS+="O=PartyC, L=London, C=GB;" +MEMBERS=${MEMBERS::-1} + +echo $MEMBERS + +docker logs corda_partya_1 > /dev/null && ./clients/build/install/clients/bin/clients network-id create-state -m "$MEMBERS" + +MEMBERS="" + +docker logs corda_network2_partya_1 > /dev/null && MEMBERS+="O=PartyA, L=London, C=GB;" +docker logs corda_network2_partyb_1 > /dev/null && MEMBERS+="O=PartyB, L=London, C=GB;" +docker logs corda_network2_partyc_1 > /dev/null && MEMBERS+="O=PartyC, L=London, C=GB;" +MEMBERS=${MEMBERS::-1} + +echo $MEMBERS + +docker logs corda_network2_partya_1 > /dev/null && CORDA_PORT=30006 NETWORK_NAME=Corda_Network2 ./clients/build/install/clients/bin/clients network-id create-state -m "$MEMBERS" + diff --git a/weaver/samples/fabric/fabric-cli/.gitignore b/weaver/samples/fabric/fabric-cli/.gitignore index 2c63a3abd6..ff055d80bf 100644 --- a/weaver/samples/fabric/fabric-cli/.gitignore +++ b/weaver/samples/fabric/fabric-cli/.gitignore @@ -24,6 +24,10 @@ iinagent.id src/wallet-network1/*.id !src/wallet-network1/networkadmin.id !src/wallet-network1/user1.id +!src/wallet-network1/alice.id +!src/wallet-network1/bob.id src/wallet-network2/*.id !src/wallet-network2/networkadmin.id -!src/wallet-network2/user1.id \ No newline at end of file +!src/wallet-network2/user1.id +!src/wallet-network2/alice.id +!src/wallet-network2/bob.id diff --git a/weaver/samples/fabric/fabric-cli/scripts/createUsers.sh b/weaver/samples/fabric/fabric-cli/scripts/createUsers.sh new file mode 100755 index 0000000000..3c5264f755 --- /dev/null +++ b/weaver/samples/fabric/fabric-cli/scripts/createUsers.sh @@ -0,0 +1,7 @@ +# Network1 +./bin/fabric-cli user add --target-network=network1 --id=alice --secret=alicepw +./bin/fabric-cli user add --target-network=network1 --id=bob --secret=bobpw + +# Network2 +./bin/fabric-cli user add --target-network=network2 --id=alice --secret=alicepw +./bin/fabric-cli user add --target-network=network2 --id=bob --secret=bobpw diff --git a/weaver/samples/fabric/fabric-cli/scripts/initAsset.sh b/weaver/samples/fabric/fabric-cli/scripts/initAsset.sh index 0220da6d7f..88bfdca044 100755 --- a/weaver/samples/fabric/fabric-cli/scripts/initAsset.sh +++ b/weaver/samples/fabric/fabric-cli/scripts/initAsset.sh @@ -1,9 +1,7 @@ # Network1 -./bin/fabric-cli user add --target-network=network1 --id=alice --secret=alicepw -./bin/fabric-cli user add --target-network=network1 --id=bob --secret=bobpw +./bin/fabric-cli user add --target-network=network1 --id=demo ./bin/fabric-cli configure asset add --target-network=network1 --type=bond --data-file=./src/data/assets.json # Network2 -./bin/fabric-cli user add --target-network=network2 --id=alice --secret=alicepw -./bin/fabric-cli user add --target-network=network2 --id=bob --secret=bobpw +./bin/fabric-cli user add --target-network=network2 --id=demo ./bin/fabric-cli configure asset add --target-network=network2 --type=token --data-file=./src/data/tokens.json diff --git a/weaver/samples/fabric/fabric-cli/scripts/initAssetN1.sh b/weaver/samples/fabric/fabric-cli/scripts/initAssetN1.sh index b0a37e2857..5d1d9f1e77 100644 --- a/weaver/samples/fabric/fabric-cli/scripts/initAssetN1.sh +++ b/weaver/samples/fabric/fabric-cli/scripts/initAssetN1.sh @@ -1,4 +1,2 @@ ./bin/fabric-cli env set-file .env -./bin/fabric-cli user add --target-network=network1 --id=alice --secret=alicepw -./bin/fabric-cli user add --target-network=network1 --id=bob --secret=bobpw -./bin/fabric-cli configure asset add --target-network=network1 --type=bond --data-file=./src/data/assets.json \ No newline at end of file +./bin/fabric-cli configure asset add --target-network=network1 --type=bond --data-file=./src/data/assets.json diff --git a/weaver/samples/fabric/fabric-cli/scripts/initAssetsForTransfer.sh b/weaver/samples/fabric/fabric-cli/scripts/initAssetsForTransfer.sh index a6f57bc1db..1530e30735 100755 --- a/weaver/samples/fabric/fabric-cli/scripts/initAssetsForTransfer.sh +++ b/weaver/samples/fabric/fabric-cli/scripts/initAssetsForTransfer.sh @@ -1,4 +1,2 @@ -./bin/fabric-cli user add --target-network=network1 --id=alice --secret=alicepw -./bin/fabric-cli user add --target-network=network2 --id=bob --secret=bobpw ./bin/fabric-cli configure asset add --target-network=network1 --type=bond --data-file=./src/data/assetsForTransfer.json ./bin/fabric-cli configure asset add --target-network=network1 --type=token --data-file=./src/data/tokensForTransfer.json diff --git a/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network1_UsersAndCerts.json b/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network1_UsersAndCerts.json index d638207977..07fe80748e 100644 --- a/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network1_UsersAndCerts.json +++ b/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network1_UsersAndCerts.json @@ -1 +1 @@ -{"alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNkekNDQWg2Z0F3SUJBZ0lVUENvbm0rcFgvRnRsTmpMTjVhbllBcmhjZEV3d0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TURNd056RXdNVEF3TUZvWERUSXpNRE13TnpFd01UVXdNRm93UWpFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVE0dwpEQVlEVlFRREV3VmhiR2xqWlRCWk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkdsWklOMTBVNnVtClB4WGRmS01TYk9iWlAxcUdpVUl3UjFVemtSdEg3ODkwSkZyNXF0RllnM3pBc2N5SEJBcktsYmZCNjBQdS8xRUUKbWNubElkRklVYXlqZ2Nzd2djZ3dEZ1lEVlIwUEFRSC9CQVFEQWdlQU1Bd0dBMVVkRXdFQi93UUNNQUF3SFFZRApWUjBPQkJZRUZFQXhwOUJEY3FON3kxR0c4VFBibjMwZjNhMHJNQjhHQTFVZEl3UVlNQmFBRkhLRzlZTDZPQzg2Cnk1RklYcHF0ZTdiT1hTRDhNR2dHQ0NvREJBVUdCd2dCQkZ4N0ltRjBkSEp6SWpwN0ltaG1Ma0ZtWm1sc2FXRjAKYVc5dUlqb2liM0puTVM1a1pYQmhjblJ0Wlc1ME1TSXNJbWhtTGtWdWNtOXNiRzFsYm5SSlJDSTZJbUZzYVdObApJaXdpYUdZdVZIbHdaU0k2SW1Oc2FXVnVkQ0o5ZlRBS0JnZ3Foa2pPUFFRREFnTkhBREJFQWlBWnBwUnZnNW5sCmtSQXJPNkFXQkZsSWp5dER2eHZCOUFsdFBab1RtVTkvVGdJZ0Nuc1NUQjBKWUtlOVdFTFppWURVNncxVklwQ0EKcWh6cUpYb1Y1blN0U0JRPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==","networkadmin":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNwekNDQWs2Z0F3SUJBZ0lVTE5vdmtjSE0zaDN4ck5HWmVDM1J1MnFhY1BBd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeExtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN4TG1OdmJUQWVGdzB5TWpFd01Ua3hNakEyTURCYUZ3MHpNakV3TVRrd01ERXgKTURCYU1Fa3hNREFOQmdOVkJBc1RCbU5zYVdWdWREQUxCZ05WQkFzVEJHOXlaekV3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URVZNQk1HQTFVRUF4TU1ibVYwZDI5eWEyRmtiV2x1TUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJCnpqMERBUWNEUWdBRStlWGREM1FSL2IxQWl1cFZna244VmxGS1Bkd0F2bnpqZmREUlhzVzRLZGpPUmdLZ09Tb0IKbjg0WHRPakJzZ1BKUmw4LzZkcW9xM0NDM0s1WmU3WDA4YU9CNmpDQjV6QU9CZ05WSFE4QkFmOEVCQU1DQjRBdwpEQVlEVlIwVEFRSC9CQUl3QURBZEJnTlZIUTRFRmdRVStQK2JYYVFmSGtBOXJGcEtSWWZrSFhJWmRWUXdId1lEClZSMGpCQmd3Rm9BVVk1eTMreUlPMFZsbnh6RXBJSU1henpPWVc2OHdnWVlHQ0NvREJBVUdCd2dCQkhwN0ltRjAKZEhKeklqcDdJbWhtTGtGbVptbHNhV0YwYVc5dUlqb2liM0puTVM1a1pYQmhjblJ0Wlc1ME1TSXNJbWhtTGtWdQpjbTlzYkcxbGJuUkpSQ0k2SW01bGRIZHZjbXRoWkcxcGJpSXNJbWhtTGxSNWNHVWlPaUpqYkdsbGJuUWlMQ0p1ClpYUjNiM0pyTFdGa2JXbHVJam9pZEhKMVpTSjlmVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJYR0wzVmRJaysKOXVUQzlPenNlMGxFNnZqenNobENEeE5lR3pKLzBvSXNFZ0lnZHEwaVZHdWtXZVJiZnJ2STVlUkdiOUJ0MVVLQgpuUmZ3VlN6RXJ1V3lUakE9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K","iinagent":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNrVENDQWplZ0F3SUJBZ0lVZDh0c1dqdXkxd0ZjK3YwdzNUK2dmZlpzbGRzd0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TVRBd056QTJORFl3TUZvWERUTXlNVEF3TmpFNE5URXdNRm93UlRFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVJFdwpEd1lEVlFRREV3aHBhVzVoWjJWdWREQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJKV2srbVZBCmpKUHZ5a0hCYTVoT08xYnBrWVowOHJyZWU0amd4Z05IUEpFQkNYZFBpNDJiNURXUXR4dDVKbFYreXlQMjBPMG4KeXRqczZXd3E3V3hNd011amdlRXdnZDR3RGdZRFZSMFBBUUgvQkFRREFnZUFNQXdHQTFVZEV3RUIvd1FDTUFBdwpIUVlEVlIwT0JCWUVGUDMvYlJKT3BwRjk3Tk5KNFNKa0FrTGVDQVlnTUI4R0ExVWRJd1FZTUJhQUZNN0hETWVoCmlIbDhiOTJRU01ONFExRkI3SlUvTUg0R0NDb0RCQVVHQndnQkJISjdJbUYwZEhKeklqcDdJbWhtTGtGbVptbHMKYVdGMGFXOXVJam9pYjNKbk1TNWtaWEJoY25SdFpXNTBNU0lzSW1obUxrVnVjbTlzYkcxbGJuUkpSQ0k2SW1scApibUZuWlc1MElpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSXNJbWxwYmkxaFoyVnVkQ0k2SW5SeWRXVWlmWDB3CkNnWUlLb1pJemowRUF3SURTQUF3UlFJaEFPblV3YThrc1RDQ1UwazBsc3p2Mll2Y2JhRmRwNFQrNExpRDBQRmoKV3plcUFpQnR4T2Z4YUtmMSttRFUyYjYrV08yeEV0ZFlhdTFweVBwaVdQTFVsY0hjaHc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="} \ No newline at end of file +{"alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNnakNDQWlpZ0F3SUJBZ0lVWHNQY1hON1RBbEg4M2kxR1l3MjRCWHVDdjFBd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeExtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN4TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFEwTURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FSXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU9NQXdHQTFVRUF4TUZZV3hwWTJVd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DCkFBVFFFcHBOQ2tEdHZzeGhiRHpjSTNuVzlsZHc4eEFYcVZ5L0lWS0xPemRFNFI4SExWeGlFWU1TTWJKQWlRRFgKQ0YwdzB3Vlg3eTk4SzU1Lzc3RlVtS1FWbzRITE1JSElNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQgpBZjhFQWpBQU1CMEdBMVVkRGdRV0JCUll6MmRvSXBma25CRVRaUkxlSnRvNEhVZ25wVEFmQmdOVkhTTUVHREFXCmdCUmpuTGY3SWc3UldXZkhNU2tnZ3hyUE01aGJyekJvQmdncUF3UUZCZ2NJQVFSY2V5SmhkSFJ5Y3lJNmV5Sm8KWmk1QlptWnBiR2xoZEdsdmJpSTZJbTl5WnpFdVpHVndZWEowYldWdWRERWlMQ0pvWmk1RmJuSnZiR3h0Wlc1MApTVVFpT2lKaGJHbGpaU0lzSW1obUxsUjVjR1VpT2lKamJHbGxiblFpZlgwd0NnWUlLb1pJemowRUF3SURTQUF3ClJRSWhBTkp4OUpQVjAyVm8zcFpVdFBSR1hBdjNocUZ3TkY2ZXBxT3Nrc2pXQ0RrQ0FpQnVQV3FOM09OSi9pVCsKT0h5TXJ2TlZrMnJFZldmMXNoZDNoUHpNRU45SXd3PT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=","bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNmakNDQWlTZ0F3SUJBZ0lVQWcxWFJCc1BiRVV6dDNmYlVaUmZuUFgxeUs0d0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeExtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN4TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFEwTURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FQXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU1NQW9HQTFVRUF4TURZbTlpTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFClNxZ0pDUWFxNlJablBEVENxdlJiSFdZWVJrYkF5MkhheExrV2ZZMEdrUTZVYmZuMkdKU3NNak5qSVVHdCtvNzEKNzMwN1FPMHZIZ3VwV01zaVpaYUhNcU9CeVRDQnhqQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVXYwYmhKenZpUnZPRVFjaHBKZE5CT0JSVGxNRXdId1lEVlIwakJCZ3dGb0FVClk1eTMreUlPMFZsbnh6RXBJSU1henpPWVc2OHdaZ1lJS2dNRUJRWUhDQUVFV25zaVlYUjBjbk1pT25zaWFHWXUKUVdabWFXeHBZWFJwYjI0aU9pSnZjbWN4TG1SbGNHRnlkRzFsYm5ReElpd2lhR1l1Ulc1eWIyeHNiV1Z1ZEVsRQpJam9pWW05aUlpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSjlmVEFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUVBCjFWYzRWUmZXcTVBWFBNS0xCZVI5WWV0S2pXMWlWbG9VL0RFdFkwTVB6NklDSURRSWlHcWhUM0RZSzVJdFF2VDAKR1RCVFdpWElDdG84eDVUR3RrZHZvQUJ6Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"} diff --git a/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network2_UsersAndCerts.json b/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network2_UsersAndCerts.json index 837245b639..91a7fb7d28 100644 --- a/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network2_UsersAndCerts.json +++ b/weaver/samples/fabric/fabric-cli/src/data/remoteNetworkUsers/network2_UsersAndCerts.json @@ -1 +1 @@ -{"bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNjekNDQWhxZ0F3SUJBZ0lVSC9idGp4TmgrTUZobmtJTlV4OG84clBVZVg4d0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TURNd056RXdNVEF3TUZvWERUSXpNRE13TnpFd01UVXdNRm93UURFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVF3dwpDZ1lEVlFRREV3TmliMkl3V1RBVEJnY3Foa2pPUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVJ4SmErYnRNQlJSdmswCm5FajZlQWRpemFPby9EZG9WUlN4bTlyNHo1WmFNL2J3blFkTjFPVFFscDBoaUlHdUdqS0VVdEVaVHJEcnhSYkcKUDZpbUlJSjBvNEhKTUlIR01BNEdBMVVkRHdFQi93UUVBd0lIZ0RBTUJnTlZIUk1CQWY4RUFqQUFNQjBHQTFVZApEZ1FXQkJSeG5xdmtYSXhHUWxGazFyemhpbzNuY3huaW16QWZCZ05WSFNNRUdEQVdnQlM1eEcwRFhmVldQbkE1CmtnNzg2c1NOSENpWjhUQm1CZ2dxQXdRRkJnY0lBUVJhZXlKaGRIUnljeUk2ZXlKb1ppNUJabVpwYkdsaGRHbHYKYmlJNkltOXlaekV1WkdWd1lYSjBiV1Z1ZERFaUxDSm9aaTVGYm5KdmJHeHRaVzUwU1VRaU9pSmliMklpTENKbwpaaTVVZVhCbElqb2lZMnhwWlc1MEluMTlNQW9HQ0NxR1NNNDlCQU1DQTBjQU1FUUNJSDd2S01lL3pCcUNKSTlxCkxUemVBK09ubC9rUmVIRmRVMVZRZmNoRWZrV0VBaUFvWjlUQVRPREJpd2luUkoxWkpER05KTTBzRFR4V3B1ckIKbUg0TnAzMHBjZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K","networkadmin":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNwekNDQWs2Z0F3SUJBZ0lVYUJQYWFDejdidW1GSGg4MjBORW1lVlNJZUFrd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeUxtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN5TG1OdmJUQWVGdzB5TWpFd01Ua3hNakEyTURCYUZ3MHpNakV3TVRrd01ERXgKTURCYU1Fa3hNREFOQmdOVkJBc1RCbU5zYVdWdWREQUxCZ05WQkFzVEJHOXlaekV3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URVZNQk1HQTFVRUF4TU1ibVYwZDI5eWEyRmtiV2x1TUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJCnpqMERBUWNEUWdBRTJGWjBYN0wvOHVKU3VkTDlJeE9YMmppK3pFVVZNbkFoOUlLV0FmVVBmWEpSbkkwQ0RtZzYKT3BpSWF0TnN0T0Y2TjhLSzNZbzFNanFXaVJrZzFDTXVocU9CNmpDQjV6QU9CZ05WSFE4QkFmOEVCQU1DQjRBdwpEQVlEVlIwVEFRSC9CQUl3QURBZEJnTlZIUTRFRmdRVWV2R29aQk1FcUo3bUQreDQ0Y1NEa1RETFlQZ3dId1lEClZSMGpCQmd3Rm9BVTJ0Z2ZEOXovK093UFg3QUNITExlNzhKSzJaY3dnWVlHQ0NvREJBVUdCd2dCQkhwN0ltRjAKZEhKeklqcDdJbWhtTGtGbVptbHNhV0YwYVc5dUlqb2liM0puTVM1a1pYQmhjblJ0Wlc1ME1TSXNJbWhtTGtWdQpjbTlzYkcxbGJuUkpSQ0k2SW01bGRIZHZjbXRoWkcxcGJpSXNJbWhtTGxSNWNHVWlPaUpqYkdsbGJuUWlMQ0p1ClpYUjNiM0pyTFdGa2JXbHVJam9pZEhKMVpTSjlmVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJxbmVYRHRJSEoKbTREdVNMUnp0MkZEYmRiTU16UjVKMXhraWZzNkxFc0JYUUlnSUM2TVBXNGJoOWxYTk1PaU9uU3J6S0JrK2R3SAp5bjVHL0F2enVxZWgyb2M9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K","iinagent":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNrVENDQWplZ0F3SUJBZ0lVQ05yZlpBVWJWM0ptZW1uS3hNVGJSdkQrbCtrd0NnWUlLb1pJemowRUF3SXcKYURFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1SUXdFZ1lEVlFRSwpFd3RJZVhCbGNteGxaR2RsY2pFUE1BMEdBMVVFQ3hNR1JtRmljbWxqTVJrd0Z3WURWUVFERXhCbVlXSnlhV010ClkyRXRjMlZ5ZG1WeU1CNFhEVEl5TVRBd056QTJORFl3TUZvWERUTXlNVEF3TmpFNE5URXdNRm93UlRFd01BMEcKQTFVRUN4TUdZMnhwWlc1ME1Bc0dBMVVFQ3hNRWIzSm5NVEFTQmdOVkJBc1RDMlJsY0dGeWRHMWxiblF4TVJFdwpEd1lEVlFRREV3aHBhVzVoWjJWdWREQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJFSkFKc1paClVOd0lJR0g5RHozL2JaS0RucFN1cnlXdDJONDdjdE1kTTJxTGszWkQxWUFuMVlubDNPOVRDTzBvY0hoN3piKzEKZzdKZy96R2J4K0NXcmFhamdlRXdnZDR3RGdZRFZSMFBBUUgvQkFRREFnZUFNQXdHQTFVZEV3RUIvd1FDTUFBdwpIUVlEVlIwT0JCWUVGRHlzWEY3Y1MxTTNLZ0xYQnA2RzNBcVQzQnlVTUI4R0ExVWRJd1FZTUJhQUZPRTQxd0VmCkJnSGYrY2ZqUXpheUUvUThwbTJiTUg0R0NDb0RCQVVHQndnQkJISjdJbUYwZEhKeklqcDdJbWhtTGtGbVptbHMKYVdGMGFXOXVJam9pYjNKbk1TNWtaWEJoY25SdFpXNTBNU0lzSW1obUxrVnVjbTlzYkcxbGJuUkpSQ0k2SW1scApibUZuWlc1MElpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSXNJbWxwYmkxaFoyVnVkQ0k2SW5SeWRXVWlmWDB3CkNnWUlLb1pJemowRUF3SURTQUF3UlFJaEFLTUxOenRVNkRHVDNuOHpHcjNmR2ZvRTdhUHZaWG1XRmFQUisxd3AKQ2t4cEFpQmIwRDVUTDh5QVBVWnZxYUc2Z0FRTzhsQnF1dldCNklLWlFUU0IvT1NpOWc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="} \ No newline at end of file +{"bob":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNmakNDQWlTZ0F3SUJBZ0lVWnBRVjgvVDFNYSthcjFldjQwSTczK05EWkY0d0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeUxtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN5TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFE0TURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FQXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU1NQW9HQTFVRUF4TURZbTlpTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFClhJVmJGSWpxU1dLQk15dTcwY3k1OTNOMUFCNXYvRlV2VmdVQ1N2L3dzNmVtRk4rVmtKU1JFVEpvamN4cmhON1IKbE5mRUJrdXdxamVuWUhhengzOS9rcU9CeVRDQnhqQU9CZ05WSFE4QkFmOEVCQU1DQjRBd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVUJ1S2JWdjhrc3NteWtwUGVQRmN2ZzMwWXNVVXdId1lEVlIwakJCZ3dGb0FVCjJ0Z2ZEOXovK093UFg3QUNITExlNzhKSzJaY3daZ1lJS2dNRUJRWUhDQUVFV25zaVlYUjBjbk1pT25zaWFHWXUKUVdabWFXeHBZWFJwYjI0aU9pSnZjbWN4TG1SbGNHRnlkRzFsYm5ReElpd2lhR1l1Ulc1eWIyeHNiV1Z1ZEVsRQpJam9pWW05aUlpd2lhR1l1Vkhsd1pTSTZJbU5zYVdWdWRDSjlmVEFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUVBCjJnUllmbm5KZEw0ajQ2S1ZDb1R1L1ZORWdhZWp5dVRQMlRaOHlWSkYzSWdDSUdjc2tTaGpXeFAzRGdtcXJPZGgKVTE1ekpzaG0vMTJlZk5zdWxEYlh6QW1oCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K","alice":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNnakNDQWlpZ0F3SUJBZ0lVQysyTXoxNjRVbEVxc2ZPZkZqTzZXRDFPMXBNd0NnWUlLb1pJemowRUF3SXcKY2pFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBZ1REazV2Y25Sb0lFTmhjbTlzYVc1aE1Sb3dHQVlEVlFRSwpFeEZ2Y21jeExtNWxkSGR2Y21zeUxtTnZiVEVQTUEwR0ExVUVDeE1HUm1GaWNtbGpNUjB3R3dZRFZRUURFeFJqCllTNXZjbWN4TG01bGRIZHZjbXN5TG1OdmJUQWVGdzB5TWpFd01Ua3dPVFE0TURCYUZ3MHlOREExTXpBeE1USTQKTURCYU1FSXhNREFMQmdOVkJBc1RCRzl5WnpFd0RRWURWUVFMRXdaamJHbGxiblF3RWdZRFZRUUxFd3RrWlhCaApjblJ0Wlc1ME1URU9NQXdHQTFVRUF4TUZZV3hwWTJVd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DCkFBUkxOem5hNW1OaGFQbk1COUdSQVdJaWxqTytSME5nTHNPUnoxQnVMYXR4eDg1cDRQNmorS1dTMXV5NjRtNGYKcE91NHlXV3NDNUF4UDNxUk1kVzAyclEzbzRITE1JSElNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQgpBZjhFQWpBQU1CMEdBMVVkRGdRV0JCVERxQWJUeVgwc0xHR1RxcitHazFMdHF0cTNPREFmQmdOVkhTTUVHREFXCmdCVGEyQjhQM1AvNDdBOWZzQUljc3Q3dndrclpsekJvQmdncUF3UUZCZ2NJQVFSY2V5SmhkSFJ5Y3lJNmV5Sm8KWmk1QlptWnBiR2xoZEdsdmJpSTZJbTl5WnpFdVpHVndZWEowYldWdWRERWlMQ0pvWmk1RmJuSnZiR3h0Wlc1MApTVVFpT2lKaGJHbGpaU0lzSW1obUxsUjVjR1VpT2lKamJHbGxiblFpZlgwd0NnWUlLb1pJemowRUF3SURTQUF3ClJRSWhBS2JFZVFUTzV2UVFISitmNzBQNm4zQmYrL3FGWHEyZkZ3RlRPQVhDQnBhSkFpQmowM3BxQVF5eENqa1AKQngraU55VGU2QzNEZmpVU0pUcitPU1V3bXhEcThRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="} diff --git a/weaver/samples/fabric/fabric-cli/src/wallet-network1/alice.id b/weaver/samples/fabric/fabric-cli/src/wallet-network1/alice.id new file mode 100644 index 0000000000..f241a4335a --- /dev/null +++ b/weaver/samples/fabric/fabric-cli/src/wallet-network1/alice.id @@ -0,0 +1 @@ +{"credentials":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUXsPcXN7TAlH83i1GYw24BXuCv1AwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAATQEppNCkDtvsxhbDzcI3nW9ldw8xAXqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDX\nCF0w0wVX7y98K55/77FUmKQVo4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBRYz2doIpfknBETZRLeJto4HUgnpTAfBgNVHSMEGDAW\ngBRjnLf7Ig7RWWfHMSkggxrPM5hbrzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhANJx9JPV02Vo3pZUtPRGXAv3hqFwNF6epqOsksjWCDkCAiBuPWqN3ONJ/iT+\nOHyMrvNVk2rEfWf1shd3hPzMEN9Iww==\n-----END CERTIFICATE-----\n","privateKey":"-----BEGIN PRIVATE KEY-----\r\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgf+pHPbwcrKHTq0YQ\r\nk3O8iw+OGMnjl7Pvt+NSnobkreehRANCAATQEppNCkDtvsxhbDzcI3nW9ldw8xAX\r\nqVy/IVKLOzdE4R8HLVxiEYMSMbJAiQDXCF0w0wVX7y98K55/77FUmKQV\r\n-----END PRIVATE KEY-----\r\n"},"mspId":"Org1MSP","type":"X.509","version":1} \ No newline at end of file diff --git a/weaver/samples/fabric/fabric-cli/src/wallet-network1/bob.id b/weaver/samples/fabric/fabric-cli/src/wallet-network1/bob.id new file mode 100644 index 0000000000..2595f0980d --- /dev/null +++ b/weaver/samples/fabric/fabric-cli/src/wallet-network1/bob.id @@ -0,0 +1 @@ +{"credentials":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICfjCCAiSgAwIBAgIUAg1XRBsPbEUzt3fbUZRfnPX1yK4wCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsxLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsxLmNvbTAeFw0yMjEwMTkwOTQ0MDBaFw0yNDA1MzAxMTI4\nMDBaMEAxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEMMAoGA1UEAxMDYm9iMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE\nSqgJCQaq6RZnPDTCqvRbHWYYRkbAy2HaxLkWfY0GkQ6Ubfn2GJSsMjNjIUGt+o71\n7307QO0vHgupWMsiZZaHMqOByTCBxjAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/\nBAIwADAdBgNVHQ4EFgQUv0bhJzviRvOEQchpJdNBOBRTlMEwHwYDVR0jBBgwFoAU\nY5y3+yIO0VlnxzEpIIMazzOYW68wZgYIKgMEBQYHCAEEWnsiYXR0cnMiOnsiaGYu\nQWZmaWxpYXRpb24iOiJvcmcxLmRlcGFydG1lbnQxIiwiaGYuRW5yb2xsbWVudElE\nIjoiYm9iIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNIADBFAiEA\n1Vc4VRfWq5AXPMKLBeR9YetKjW1iVloU/DEtY0MPz6ICIDQIiGqhT3DYK5ItQvT0\nGTBTWiXICto8x5TGtkdvoABz\n-----END CERTIFICATE-----\n","privateKey":"-----BEGIN PRIVATE KEY-----\r\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLiFXlGzjlOVt6Ri3\r\nNmf94LcZHqmKhM/bW7As4bVdWbOhRANCAARKqAkJBqrpFmc8NMKq9FsdZhhGRsDL\r\nYdrEuRZ9jQaRDpRt+fYYlKwyM2MhQa36jvXvfTtA7S8eC6lYyyJllocy\r\n-----END PRIVATE KEY-----\r\n"},"mspId":"Org1MSP","type":"X.509","version":1} \ No newline at end of file diff --git a/weaver/samples/fabric/fabric-cli/src/wallet-network2/alice.id b/weaver/samples/fabric/fabric-cli/src/wallet-network2/alice.id new file mode 100644 index 0000000000..d6f5b2ff11 --- /dev/null +++ b/weaver/samples/fabric/fabric-cli/src/wallet-network2/alice.id @@ -0,0 +1 @@ +{"credentials":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICgjCCAiigAwIBAgIUC+2Mz164UlEqsfOfFjO6WD1O1pMwCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsyLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsyLmNvbTAeFw0yMjEwMTkwOTQ4MDBaFw0yNDA1MzAxMTI4\nMDBaMEIxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEOMAwGA1UEAxMFYWxpY2UwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC\nAARLNzna5mNhaPnMB9GRAWIiljO+R0NgLsORz1BuLatxx85p4P6j+KWS1uy64m4f\npOu4yWWsC5AxP3qRMdW02rQ3o4HLMIHIMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMB\nAf8EAjAAMB0GA1UdDgQWBBTDqAbTyX0sLGGTqr+Gk1Ltqtq3ODAfBgNVHSMEGDAW\ngBTa2B8P3P/47A9fsAIcst7vwkrZlzBoBggqAwQFBgcIAQRceyJhdHRycyI6eyJo\nZi5BZmZpbGlhdGlvbiI6Im9yZzEuZGVwYXJ0bWVudDEiLCJoZi5FbnJvbGxtZW50\nSUQiOiJhbGljZSIsImhmLlR5cGUiOiJjbGllbnQifX0wCgYIKoZIzj0EAwIDSAAw\nRQIhAKbEeQTO5vQQHJ+f70P6n3Bf+/qFXq2fFwFTOAXCBpaJAiBj03pqAQyxCjkP\nBx+iNyTe6C3DfjUSJTr+OSUwmxDq8Q==\n-----END CERTIFICATE-----\n","privateKey":"-----BEGIN PRIVATE KEY-----\r\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgIahenRXYeW1e2jn6\r\ndlFoqgoX4vHYGF5U/I1T1yTpzmOhRANCAARLNzna5mNhaPnMB9GRAWIiljO+R0Ng\r\nLsORz1BuLatxx85p4P6j+KWS1uy64m4fpOu4yWWsC5AxP3qRMdW02rQ3\r\n-----END PRIVATE KEY-----\r\n"},"mspId":"Org1MSP","type":"X.509","version":1} \ No newline at end of file diff --git a/weaver/samples/fabric/fabric-cli/src/wallet-network2/bob.id b/weaver/samples/fabric/fabric-cli/src/wallet-network2/bob.id new file mode 100644 index 0000000000..5dde284f37 --- /dev/null +++ b/weaver/samples/fabric/fabric-cli/src/wallet-network2/bob.id @@ -0,0 +1 @@ +{"credentials":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICfjCCAiSgAwIBAgIUZpQV8/T1Ma+ar1ev40I73+NDZF4wCgYIKoZIzj0EAwIw\ncjELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRowGAYDVQQK\nExFvcmcxLm5ldHdvcmsyLmNvbTEPMA0GA1UECxMGRmFicmljMR0wGwYDVQQDExRj\nYS5vcmcxLm5ldHdvcmsyLmNvbTAeFw0yMjEwMTkwOTQ4MDBaFw0yNDA1MzAxMTI4\nMDBaMEAxMDALBgNVBAsTBG9yZzEwDQYDVQQLEwZjbGllbnQwEgYDVQQLEwtkZXBh\ncnRtZW50MTEMMAoGA1UEAxMDYm9iMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE\nXIVbFIjqSWKBMyu70cy593N1AB5v/FUvVgUCSv/ws6emFN+VkJSRETJojcxrhN7R\nlNfEBkuwqjenYHazx39/kqOByTCBxjAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/\nBAIwADAdBgNVHQ4EFgQUBuKbVv8kssmykpPePFcvg30YsUUwHwYDVR0jBBgwFoAU\n2tgfD9z/+OwPX7ACHLLe78JK2ZcwZgYIKgMEBQYHCAEEWnsiYXR0cnMiOnsiaGYu\nQWZmaWxpYXRpb24iOiJvcmcxLmRlcGFydG1lbnQxIiwiaGYuRW5yb2xsbWVudElE\nIjoiYm9iIiwiaGYuVHlwZSI6ImNsaWVudCJ9fTAKBggqhkjOPQQDAgNIADBFAiEA\n2gRYfnnJdL4j46KVCoTu/VNEgaejyuTP2TZ8yVJF3IgCIGcskShjWxP3DgmqrOdh\nU15zJshm/12efNsulDbXzAmh\n-----END CERTIFICATE-----\n","privateKey":"-----BEGIN PRIVATE KEY-----\r\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgq1bCvmIG93cc8egu\r\n/MApzVJjbuOnnPoCezvywQiEmvKhRANCAARchVsUiOpJYoEzK7vRzLn3c3UAHm/8\r\nVS9WBQJK//Czp6YU35WQlJERMmiNzGuE3tGU18QGS7CqN6dgdrPHf3+S\r\n-----END PRIVATE KEY-----\r\n"},"mspId":"Org1MSP","type":"X.509","version":1} \ No newline at end of file diff --git a/weaver/sdks/corda/src/main/kotlin/org/hyperledger/cacti/weaver/sdk/corda/InteroperableHelper.kt b/weaver/sdks/corda/src/main/kotlin/org/hyperledger/cacti/weaver/sdk/corda/InteroperableHelper.kt index 1148c2e9e7..d5e091e94d 100644 --- a/weaver/sdks/corda/src/main/kotlin/org/hyperledger/cacti/weaver/sdk/corda/InteroperableHelper.kt +++ b/weaver/sdks/corda/src/main/kotlin/org/hyperledger/cacti/weaver/sdk/corda/InteroperableHelper.kt @@ -169,23 +169,28 @@ class InteroperableHelper { return Left(Error("Error creating channel to relay: ${e.message}\n")) } val client = RelayClient(channel) - var result: Either = Left(Error("")) - runBlocking { - val eitherErrorQuery = constructNetworkQuery(proxy, externalStateAddress, networkName) - logger.debug("\nCorda network returned: $eitherErrorQuery \n") - eitherErrorQuery.map { networkQuery -> - logger.debug("Network query: $networkQuery") - runBlocking { - val ack = async { client.requestState(networkQuery) }.await() - pollForState(ack.requestId, client).map { - result = writeExternalStateToVault( - proxy, - it, - externalStateAddress) - } - } + val eitherErrorQuery = constructNetworkQuery(proxy, externalStateAddress, networkName) + logger.debug("Corda network returned: $eitherErrorQuery \n") + val result = eitherErrorQuery.fold({ + logger.error("error ${it}") + Left(it) + }, { networkQuery -> + logger.debug("Network query: $networkQuery") + var eitherErrorResult: Either = Left(Error("Unknown Error")) + runBlocking { + val ack = async { client.requestState(networkQuery) }.await() + pollForState(ack.requestId, client).fold({ + logger.error("Error in Interop Flow: ${it.message}\n") + eitherErrorResult = Left(Error("Error in Interop Flow: ${it.message}\n")) + }, { state -> + eitherErrorResult = writeExternalStateToVault( + proxy, + state, + externalStateAddress) + }) } - } + eitherErrorResult + }) return result } @@ -288,14 +293,15 @@ class InteroperableHelper { * @property proxy The proxy to the Corda node RPC connection. * @return Returns an Either with an error if the RPC connection failed or the interop flow failed, or a NetworkQuery. */ - suspend fun constructNetworkQuery( + fun constructNetworkQuery( proxy: CordaRPCOps, address: String, requestingNetwork: String ): Either { logger.debug("Getting query information for foreign network from Corda network") - try { - val eitherErrorRequest = proxy.startFlow(::CreateExternalRequest, address) + return try { + val eitherErrorRequest = runCatching { + proxy.startFlow(::CreateExternalRequest, address) .returnValue.get().map { Networks.NetworkQuery.newBuilder() .addAllPolicy(it.policy) @@ -308,9 +314,14 @@ class InteroperableHelper { .setNonce(it.nonce) .build() } - return eitherErrorRequest + }.getOrThrow() + if (eitherErrorRequest.isLeft()) { + Left(Error("Corda Network Error: ${eitherErrorRequest}")) + } else { + eitherErrorRequest + } } catch (e: Exception) { - return Left(Error("Corda Network Error: ${e.message}")) + Left(Error("Corda Network Error: ${e.message}")) } } @@ -325,11 +336,13 @@ class InteroperableHelper { * @return Returns the request state when it has status "COMPLETED" or "ERROR". */ suspend fun pollForState(requestId: String, client: RelayClient, retryCount: Int = 0): Either = coroutineScope { - val num = 30 + val timeout = 30 + val delayTime = 500L + val num = 30*1000/delayTime if (retryCount > num) { - Left(Error("Error: Timeout, remote network took longer than $num seconds to respond")) + Left(Error("Error: Timeout, remote network took longer than $timeout seconds to respond")) } else { - delay(500L) + delay(delayTime) val requestState = async { client.getState(requestId) }.await() logger.debug("Response from getState: $requestState") when (requestState.status.toString()) { diff --git a/weaver/sdks/fabric/interoperation-node-sdk/src/EventsManager.ts b/weaver/sdks/fabric/interoperation-node-sdk/src/EventsManager.ts index 5773a8fd5b..5af1f5ba61 100644 --- a/weaver/sdks/fabric/interoperation-node-sdk/src/EventsManager.ts +++ b/weaver/sdks/fabric/interoperation-node-sdk/src/EventsManager.ts @@ -129,7 +129,7 @@ const subscribeRemoteEvent = async ( throw new Error(`InteropFlow failed to get policy criteria: ${policyCriteriaError}`); } - const relay = useTls ? new Relay(localRelayEndpoint, Relay.defaultTimeout, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); + const relay = useTls ? new Relay(localRelayEndpoint, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); const uuidValue = uuidv4(); logger.debug("Making event subscription call to relay for \ @@ -201,7 +201,7 @@ const unsubscribeRemoteEvent = async ( throw new Error(`InteropFlow failed to get policy criteria: ${policyCriteriaError}`); } - const relay = useTls ? new Relay(localRelayEndpoint, Relay.defaultTimeout, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); + const relay = useTls ? new Relay(localRelayEndpoint, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); const uuidValue = uuidv4(); logger.debug("Making event unsubscription call to relay for \ @@ -241,7 +241,7 @@ const getSubscriptionStatus = async ( ): Promise => { logger.debug("Get Event Subscription Status") - const relay = useTls ? new Relay(localRelayEndpoint, Relay.defaultTimeout, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); + const relay = useTls ? new Relay(localRelayEndpoint, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); const [relayResponse, relayResponseError] = await helpers.handlePromise( relay.GetEventSubscriptionState( @@ -279,7 +279,7 @@ const getAllReceivedEvents = async ( ): Promise => { logger.debug("Get all received event states") - const relay = useTls ? new Relay(localRelayEndpoint, Relay.defaultTimeout, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); + const relay = useTls ? new Relay(localRelayEndpoint, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); const [relayResponse, relayResponseError] = await helpers.handlePromise( relay.GetEventStates( diff --git a/weaver/sdks/fabric/interoperation-node-sdk/src/InteroperableHelper.ts b/weaver/sdks/fabric/interoperation-node-sdk/src/InteroperableHelper.ts index a108d71510..e6866ba680 100644 --- a/weaver/sdks/fabric/interoperation-node-sdk/src/InteroperableHelper.ts +++ b/weaver/sdks/fabric/interoperation-node-sdk/src/InteroperableHelper.ts @@ -685,7 +685,7 @@ const getRemoteView = async ( if (policyCriteriaError) { throw new Error(`InteropFlow failed to get policy criteria: ${policyCriteriaError}`); } - const relay = useTls ? new Relay(localRelayEndpoint, Relay.defaultTimeout, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); + const relay = useTls ? new Relay(localRelayEndpoint, true, tlsRootCACertPaths) : new Relay(localRelayEndpoint); const uuidValue = uuidv4(); // Step 3 // TODO fix types here so can return proper view diff --git a/weaver/sdks/fabric/interoperation-node-sdk/src/Relay.ts b/weaver/sdks/fabric/interoperation-node-sdk/src/Relay.ts index 571e085564..02ceff71cd 100644 --- a/weaver/sdks/fabric/interoperation-node-sdk/src/Relay.ts +++ b/weaver/sdks/fabric/interoperation-node-sdk/src/Relay.ts @@ -20,13 +20,14 @@ import * as helpers from "./helpers"; * The Relay class represents a relay in the target blockchain network. */ class Relay { - static defaultTimeout = 3000; + static defaultTimeout = 30000; + static defaultBackOffMSec = 500; timeoutTime = Relay.defaultTimeout; + backOffMSec = Relay.defaultBackOffMSec; _endPoint = ""; _useTls = false; _tlsRootCACerts = ''; // TODO: make this configurable parameter - backOffMSec = 500; /** * Construct a Relay object with the given url. A Relay object @@ -36,11 +37,12 @@ class Relay { * @param {string} url - The URL with format of "http(s)://host:port". * @returns {Relay} The Relay instance. */ - constructor(endPoint: string, timeoutTime = 30000, useTls = false, tlsRootCACertPaths?: Array) { + constructor(endPoint: string, useTls = false, tlsRootCACertPaths?: Array, timeoutTime = 30000, backOffMSec = 500) { if (!endPoint) { throw new Error("Invalid Arguments"); } this.timeoutTime = timeoutTime; + this.backOffMSec = backOffMSec; // eslint-disable-next-line this._endPoint = endPoint; this._useTls = useTls; diff --git a/weaver/sdks/fabric/interoperation-node-sdk/test/Relay.js b/weaver/sdks/fabric/interoperation-node-sdk/test/Relay.js index 9c38a5c4e7..d443ee6c64 100644 --- a/weaver/sdks/fabric/interoperation-node-sdk/test/Relay.js +++ b/weaver/sdks/fabric/interoperation-node-sdk/test/Relay.js @@ -241,7 +241,7 @@ describe("Relay", () => { }); describe("#fail relay api calls 2", () => { const localRelayEndpoint = "localhost:19082" - const relay = new Relay(localRelayEndpoint, 2000); + const relay = new Relay(localRelayEndpoint, false, [], 2000); const requestId = "ABC-123" const ack = { diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/Org1MSPanchors.tx b/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/Org1MSPanchors.tx index 5a76c881db569dcbae0b9bb4c6679194fe66f7ac..b0331b3afbbec3da0228f6521e2e9adb023f6470 100644 GIT binary patch delta 50 zcmdnVw3A7IYa0`nIF~2~lN1}rze{%(PZaQ(n5i~doRN28f6l}-O%RJii_I}5H#4so E0Bpn##{d8T delta 64 zcmdnVw3A7IYa0`nIF~2~lN1|A$AtZ}CJOkl2c;&aq!txV{Gl_kKW8!rqo$}5Hy3+& TQDzBHRER-~%`qi6Gp`r`OP3PO diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/Org2MSPanchors.tx b/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/Org2MSPanchors.tx index 1b526e0a47d5c55d146bd912fba6355597619446..a79afebe90c270bae47a1d026006c276f4f66ffc 100644 GIT binary patch delta 25 hcmdnVw3A7IYa0`nIF~2~lN1}rze{%(ZxqmE1OQSe2K4{{ delta 25 hcmdnVw3A7IYa0`nIF~2~lN1|A$AtZ}HVSAm0su?S1{VMT diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/mychannel.block b/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/mychannel.block index 31c855549cad51d018f1470ab625f297180d4560..f10d75ab93298906dc7d00ac05d67f103751963b 100644 GIT binary patch delta 602 zcmcb+f${DJMmsJgDTQhJi-pwV%NG7o>XKCyNl%K_>CUu`b@!TT_Q>j|n6kFe$_=LPHyyqQ zFv~N)HsX33GkLwl$^8euJ`8`i@7?4Jf!cgVzQF-P3_{#o?EXdRhLbsiOoUN|!19w1 z>Z(sp*9!!?rGB$}umnqe_CeEm>pdPR?APjF@HgpEh{t5P%6Z!^D+#$9xH2g+99+ci z`B38Z@qYeVZ*|w6Birt7H1O%*xy{6S)^1{-m@1Qk!ikQ?tSxs0ufMqOtCo3JU{#0S zgAEDqK66%@7p&KeWQH2_v)F-k|Izd5ZIb%io$Bii3etL>wx}u9Kj8PCGk4jafAg6X zN*}BIi@9dv$H8>%Q0{}HogBezm(%2fu9yekdvqlvVvCTQfeVuY!}`rEU7*3l)qrcyQ#0anq(c4zp+aPA7fGoy4=59@Z0g~+LJG>&Q)n`e)(OxEaCZ#Ka Pig{mS=SXpJF~A@I@Vo6< delta 594 zcmcb+f${DJMmsJgDTT(bAD*2{WeRJ4x;eFKb%u{ksQQLeYo(Gc_w*j}{4euGXypb* zuBAYHV?86+dJZm84n`?9j_wKjXKl3OVNuf(ni;p8tDo^uW#F$OldwOV(=Q2gNzC3W zv}ida*U?Fg9E?KyCoyhjR9YiExy?&ua)24@WLdM>lkL2;CSNm^-MquBU3l_NuZci` zDn_lzYbA6ip9rd-e84-1LyOHZB{ws#cyj^E1L4gj5^p&s`%9=yE(=nfyh_o3a=fn! zScBf=r#>2!gM4%*^ZM#duJv)8d{t2eC>tnzO@ymkglh)K%}h`?Z$9k%m02Q1^S9ED z$)8*V&wgRZSLHT#?oHx2Qq*WX`9h#JpP_GXfDnTaHy68qQM%D&&L9(XA@3la$xppg zCjSre06J7SeeRo7G8 zedjE0w+&TxoUM}ok&|Dv^vziwZ3US*OOLBCDFpiPJqf*jUO2}?tR(u9#W&d>TZNUF z@9p={Rhcej`TCKNn}G|Hf*2=@W!8R$c#QS<-Py_ diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/mychannel.tx b/weaver/tests/network-setups/fabric/network-artifacts/network1/channel-artifacts/mychannel.tx index 549b1a9c7c9c0795cdf82c19c8c7095bfd497080..ad573d528e7f7abd361423e21332f8cf9cab054d 100644 GIT binary patch delta 71 zcmdnbyq{TsYY#J*IF~2~lN1}rze{%(PZTicGx7}%5MmJG=3@6RN;jMsYJx5@U1xFu Oqw>T}fj&27}h}Sp14qVk6}fDUp;&iWI*xCM`cAMg9Mx zgf3Dqf&ewz8eDX1py(&)Dlm$68+6fC3v}OYcUc5&(I9plS2Ilv1W177t?mQvedoS& z&pmHF+N^KoBt?Zd}s##I&6H^`+mZo}{GAv%QZq@1}p7sqg(N{q)gw z=*Henb@T3N0)af7z%bZ>{Je|dDC!Ud;W;>5z;M6d`nZp~q}`0)|Kxio8Ey0QG=Vo= z)N^syYkDYz;IO}r5D&}eQOI*h2qzp8aeO@f`|a=FN}pF?wo`C06eH1fCW85B!E;~& z&BHG2*v+QrLqyXd)+K9@MCy@r`wxGvZf;!JNNw-Dv&pZ6|DSiDOzQI8)AUO_Z@lp{ zW_L~W*Kht-2Ek4s`~-y#VfZzKjBNvC{dTcPh4p}1aDWOpjS65>0h5};XsapeJ6c2W z`!y3@RsAz!sSGg{GS-nCS-#fM2sqnW7%3AI(8D{{2Vh2>F8MQN*ob5nV)LdmiUR3kLG;&ebpxLTfe zy!n6vtN3sF!E3LlQ&&zuQ;@cMzC+(Y&T;1E3ty(A;9N)Ha~+wJnrn)LN_ANh4dJr2 zKrmp=igTFyN*!_EKu0&WtuxjUEtVf2{ZN&e;ZQ7g=;?eCwH$ioa%kTubiD-`QRYZr z<~Y4ll~x{uDI{CfqmZ$Ly5R6sDAQ)LSb`SNLN|$Jfvn(ojvz`}uOjOMjI9bB%f&y? z4&(nkzH&{mR){y?hJL3H7`35PoBVX0qy_z9eEcN0KL9~6q84%q1TII(iW^&vkANk!&bl*mT~zNSNnK0t>JZCX>xCN)P}qtZew<(tEi zH0ey*Mv?BU7ZuEE#z;gZkou1zowy7h-wkT2P;8>2NO_nI#5d)w+jIasdNcZB^-x&*>m&VBx9D9-aH!5 zi+JcLZU@38-ml3T3j-IMk?ndu3$P(P8uzkpeE89w18BvX%>u#t%PP}zELC=TL#fQq zlcIse^6^Rhn~$#E<@5c5HxxXXFOEHI%Az$`D&d&uVp;?dectZ_k{MeZYIfJW8*F#L tcwG%7&E+WDLdUu}&?-G8+s*qE%0b&qkdyRTUlps=Iq!emP9;9R_&;HiWFP;qqaW4) diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/Org1MSPanchors.tx b/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/Org1MSPanchors.tx index e95615af47ffe42751ca2c213a9ff15178779b3d..ac02ee4a0b870c25024e26dcee141e4599473ec4 100644 GIT binary patch delta 39 vcmdnVw3A7IYa0`nIF~2~lN1}r*UNVnPZU_m!Oq3(8yq0SFmZ?F#9#IR&%z6~ delta 40 wcmdnVw3A7IYa0`nIF~2~lN1|A%cT9YCJL;ac*ufNik*wuH#k6uVd5`)0MW|}0ssI2 diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/Org2MSPanchors.tx b/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/Org2MSPanchors.tx index f322c21a3db629a8622dd5f6a79e6962d48dd25b..3b84f863c294c9971ae5c229a7fa60ce9a1f7db1 100644 GIT binary patch delta 77 zcmdnVw3A7IYa0`nIF~2~lN1}r*UNVnPZaQ+%)_Y4uf)&A?V6X8UsRl$o0?ZLu{RGS SEQuy8#Gu9In39{BR}26{sTN!S delta 72 zcmdnVw3A7IYa0`nIF~2~lN1|A%cT9YCJK1+@pEyz=B4Bp6{qH==9NtRp)s*P2UCzk Mi_I}5H#4so0QVIa0ssI2 diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/mychannel.block b/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/mychannel.block index a97b0a431fb0c1f9dcb3997d47679c8e427d7dc2..6e03e9174b654e5327d4c00a0ac3a7bb76d95458 100644 GIT binary patch delta 494 zcmcbyf$_!$MmsJgDTSQ>A!k>u*|f8z-rDMh<(d!cKGmJGR@`89D$QVFIE&adp(Ps_ zxfTHNmGz8Vt2wwtIT)qbIDTBdvv{K&2aD8=JEi44sjJ>>OOTmf-sZT8@946ChrvqD zLW?FRu;^_*#PU#RaxaU?#4&k>x98+0MgPrT6&o}szYL0+T<@zg zd5?F{WLKZBlgqs`Wwh8FQ*tx&iiNI;aCM1r%>Y@;1hsbae&4Um5;}jace0o_um14o zgR^|;HHS-2q}lE@D_KoG6Sy4N$j#2d5-j!n20HR{LY`ds7jGh4s&e;78{1j;%n3#j zLT&~wObWcuD!BcgX;@f@2uHrj`qF%aMZ@ulkFkm1Prj;#xpF delta 494 zcmV>hKQ=E3Ft8G& zumK97umK9wuK^0H2nrPl0U8DfhmyaVu|5a{8kOJ53yqaavNX-(PX>M~8)f5Vf6bhIK3Ka+f8U_f5lE0d>zfJW67$?6_ zqFEKJ#Ky*M3#tpF2dy9s*RPd2tdq=9r<2f2b(3^UTeCw`7zBSc@6#`JoLj!YxucvG z9@(2JCu@~}t$P9zMleJIASvaRhRi^lBQrlPwPl-!oo4F0p=nLF!CK7I{B9aQp#mU8 zFnzR;s}FQ>NJl+o6*bV@f*1`msS7i1=VK08)|Y4!MleJIAT%s}3xA;?P|{jbd-%Sm z%zaPjE}^8i*u#ETJWRv%gbV^8BAeeUpy78YYZ>Z9qtW(F#y#^5*faOol4s52wJN-p z5=Ssa0wDn2!MF=9v%F=Uje&S%nY`oXXj2sX2;fZ0@+pN)BFj($AR=|*=vJt@@oi5t knH``Aw3TSL_))~9eEU((%~*$CDjEt3015yK015yK0Hf{G7XSbN diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/mychannel.tx b/weaver/tests/network-setups/fabric/network-artifacts/network2/channel-artifacts/mychannel.tx index ded6cda24b6923a66d9ea0b071a611e9c4d61cae..1f23365c8b9d5b440b77136025341f6753bcc41c 100644 GIT binary patch delta 35 rcmdnbyq{TsYY#J*IF~2~lN1}r*UNVnPZZcZ*^)78;-Rw1lNogYxZw+~ delta 35 rcmdnbyq{TsYY#J*IF~2~lN1|A%cT9YCJJnxEXPS$&5Mxsfr4_ diff --git a/weaver/tests/network-setups/fabric/network-artifacts/network2/fabric-ca/org1/fabric-ca-server.db b/weaver/tests/network-setups/fabric/network-artifacts/network2/fabric-ca/org1/fabric-ca-server.db index c2baa09a67cb19c89918fff11690b83845a1cfaa..e8d8fe1209f8e68c92238027d452fa7e19016077 100644 GIT binary patch delta 2010 zcmb7^O^@5g8OK-7u6I`}tz#sO)9l8z+f8FsUW@ON(zpTNBvBGck>Z;eY+Jrd)GNi6 zNb2ImhrmFKAO;TwdWjE3o3^K53$(`;J>=RC&}+Ux0@u5ahJ9)EiO z^DXXfekb?R`X zSuX0BWfVd|$S^?{uDBou!={0jVH9HBiU3YzsrmC{RLS z)B+K+TtOY!g<)tNlF6M3Z=d~D*xWeS$ZhZZe3M@d{@d<>`?;4+PV(Q{dFP!E>D^Vf zpXUYX)f*S{5ONHl$1rdW1mA+v>o>`Q>ysqj?|68`5V*(4`czQLMG0h$f-wV~1p+W7 zxWG|*6-ht7@!9Q!qi~R2;xQ{RNS37tgQZs!3U3h}rx1835w%L9FX@O9x|AXaEjrSD zvo;)>V<9bm@%m+!#V0i!l+VMuqe?%$^TyFnvl^qARmKlGYLj4-c?qx*v;uP=PN0io zRbD8bOm-HBVcS&u7;*&*lB#9$r;zBBIDjb#j1ii3bB5{V>Y zKVAOdyP0hI;+HQU6Z592EXsp093_Kk+i6#=g$D!OP?n>5w7Rqi_ypla)d?96zgbc0eKMtXRHGW zyY6`0uv>_aU`>UbNb{n?(VpS>$y{nfl3q@fMipi}lBrqYpwsi!xD8X@D46kfFDrxS zvJv)1MG$gaE}Rc3Q(NMrUi$Hy2S2>`Rz7#--LChqXNfjl^6zmYKJc?e4@5A)mI^-n-@%04{$iP++nV*?#=J)=EliAqhx zRi;1m`GN>=UMu9qB}mL$#%Uav(J9i#{6bUhfb#@HMu?l8@^d6n)sRH-RVo9KwN(I` z3Gf7|w^*jmqE@a!d9&&1+zkJ0Jctp(*WkF^m~tPU7ir07vPalB|MA4 z1<^{o`uEd&kKl{Fl{95{=IiERBfBBDsDr#g&?y!;#pfy6_ zq3$UFsNtdyAU#j>4OnZngqe+UxR7nQ_HaG{w29d*2PB8lrQ*C!N!)T`HG8&Ln$klO zx4e=>Ri^3TKX1Pts&NA?mLo4h<(aq$hV3CcQv2m>2gIZFqaWW)Cr>ULVuVK`&UgwS zH%Cpag)R1dtm6Bas|K1tS11KiRQlpbroR2q6Fth6=b1kqfB_cnBf0F)$4X zvmqGV2LS`K{vQSq8Vd|j01s6Us}BGTQVpmL{tl`PrwmaJR1E#I5nwY6lTbSavsOH= W!v+Bi2LKEQvk_qZ3%3Uh0r>+uKp+YL diff --git a/weaver/tests/network-setups/fabric/shared/README.md b/weaver/tests/network-setups/fabric/shared/README.md index e21130154b..dedbf4e307 100644 --- a/weaver/tests/network-setups/fabric/shared/README.md +++ b/weaver/tests/network-setups/fabric/shared/README.md @@ -38,6 +38,7 @@ All paths in following steps are relative to this folder (`tests/network-setups/ 4. Build `fabric-cli`. Set up `.env` and `config.json` as per the steps in docs. (Don't run anything else in fabric-cli from the steps there). 4. Go to `samples/fabric/fabric-cli`, and run following commands to create credentials for fabric networks: ``` + ./scripts/createUsers.sh ./bin/fabric-cli configure create all --local-network=network1 ./bin/fabric-cli configure create all --local-network=network2 ```