fabric-samples/ci/scripts/run-test-network-hsm.sh
Aadithyan Raju b82a309d91
NixOS support (Multi-Linux Distro Support) (#1310)
Signed-off-by: AadithyanRaju <aadithyan75@gmail.com>
Signed-off-by: Aadithyan Raju <93834376+AadithyanRaju@users.noreply.github.com>
2025-03-24 19:15:58 +00:00

72 lines
1.8 KiB
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
CHAINCODE_LANGUAGE=${CHAINCODE_LANGUAGE:-go}
CHAINCODE_PATH=${CHAINCODE_PATH:-../asset-transfer-basic}
function print() {
GREEN='\033[0;32m'
NC='\033[0m'
echo
echo -e "${GREEN}${1}${NC}"
}
function createNetwork() {
print "Creating 3 Org network"
./network.sh up createChannel -ca -s couchdb
cd addOrg3
./addOrg3.sh up -ca -s couchdb
cd ..
}
function deployChaincode() {
print "Deploying ${CHAINCODE_NAME} chaincode"
./network.sh deployCC -ccn "${CHAINCODE_NAME}" -ccp "${CHAINCODE_PATH}/chaincode-${CHAINCODE_LANGUAGE}" -ccv 1 -ccs 1 -ccl "${CHAINCODE_LANGUAGE}"
}
function stopNetwork() {
print "Stopping network"
./network.sh down
}
# Set up one test network to run each test scenario.
# Each test will create an independent scope by installing a new chaincode contract to the channel.
createNetwork
echo 'go install pkcs11 enabled fabric-ca-client'
GOBIN=${PWD}/../bin go install -tags pkcs11 github.com/hyperledger/fabric-ca/cmd/fabric-ca-client@latest
fabric-ca-client version
# Run Typescript HSM gateway application
print "Initializing Typescript HSM Gateway application"
export CHAINCODE_NAME=ts_hsm_gateway
deployChaincode
print "Initializing Typescript HSM gateway application"
pushd ../hardware-security-module/scripts/
print "Enroll and register User in HSM"
./generate-hsm-user.sh HSMUser
pushd ../application-typescript/
print "install dependencies and prepare for running"
npm install
print "Running the output app"
npm run start
popd
popd
# Run Go HSM gateway application
print "Initializing Go HSM gateway application"
export CHAINCODE_NAME=go_hsm
deployChaincode
pushd ../hardware-security-module/scripts/
print "Register and enroll user in HSM"
./generate-hsm-user.sh HSMUser
pushd ../application-go
print "Running the output app"
go run -tags pkcs11 .
popd
popd
stopNetwork