Created
May 15, 2019 08:19
-
-
Save umarmw/8af7426d2abb827828b894ac15daeb5a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# Copyright IBM Corp All Rights Reserved | |
# | |
# SPDX-License-Identifier: Apache-2.0 | |
# | |
# Exit on first error | |
set -e | |
# don't rewrite paths for Windows Git Bash users | |
export MSYS_NO_PATHCONV=1 | |
starttime=$(date +%s) | |
CC_SRC_LANGUAGE=${1:-"go"} | |
CC_SRC_LANGUAGE=`echo "$CC_SRC_LANGUAGE" | tr [:upper:] [:lower:]` | |
CC_RUNTIME_LANGUAGE=node # chaincode runtime language is node.js | |
CC_SRC_PATH=/opt/gopath/src/github.com/chaincode/vblock/javascript | |
CC_VERSION=1.1.3 | |
CONFIG_ROOT=/opt/gopath/src/github.com/hyperledger/fabric/peer | |
ORG1_MSPCONFIGPATH=${CONFIG_ROOT}/crypto/peerOrganizations/org1.example.com/users/[email protected]/msp | |
ORG1_TLS_ROOTCERT_FILE=${CONFIG_ROOT}/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt | |
ORG2_MSPCONFIGPATH=${CONFIG_ROOT}/crypto/peerOrganizations/org2.example.com/users/[email protected]/msp | |
ORG2_TLS_ROOTCERT_FILE=${CONFIG_ROOT}/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt | |
ORDERER_TLS_ROOTCERT_FILE=${CONFIG_ROOT}/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem | |
set -x | |
echo "Installing smart contract on peer0.org1.example.com" | |
docker exec \ | |
-e CORE_PEER_LOCALMSPID=Org1MSP \ | |
-e CORE_PEER_ADDRESS=peer0.org1.example.com:7051 \ | |
-e CORE_PEER_MSPCONFIGPATH=${ORG1_MSPCONFIGPATH} \ | |
-e CORE_PEER_TLS_ROOTCERT_FILE=${ORG1_TLS_ROOTCERT_FILE} \ | |
cli \ | |
peer chaincode install \ | |
-n vblock \ | |
-v "$CC_VERSION" \ | |
-p "$CC_SRC_PATH" \ | |
-l "$CC_RUNTIME_LANGUAGE" | |
echo "Installing smart contract on peer0.org2.example.com" | |
docker exec \ | |
-e CORE_PEER_LOCALMSPID=Org2MSP \ | |
-e CORE_PEER_ADDRESS=peer0.org2.example.com:9051 \ | |
-e CORE_PEER_MSPCONFIGPATH=${ORG2_MSPCONFIGPATH} \ | |
-e CORE_PEER_TLS_ROOTCERT_FILE=${ORG2_TLS_ROOTCERT_FILE} \ | |
cli \ | |
peer chaincode install \ | |
-n vblock \ | |
-v "$CC_VERSION" \ | |
-p "$CC_SRC_PATH" \ | |
-l "$CC_RUNTIME_LANGUAGE" | |
echo "Instantiating smart contract on mychannel" | |
docker exec \ | |
-e CORE_PEER_LOCALMSPID=Org1MSP \ | |
-e CORE_PEER_MSPCONFIGPATH=${ORG1_MSPCONFIGPATH} \ | |
cli \ | |
peer chaincode upgrade \ | |
-o orderer.example.com:7050 \ | |
-C mychannel \ | |
-n vblock \ | |
-l "$CC_RUNTIME_LANGUAGE" \ | |
-v "$CC_VERSION" \ | |
-c '{"Args":[]}' \ | |
-P "AND('Org1MSP.member','Org2MSP.member')" \ | |
--tls \ | |
--cafile ${ORDERER_TLS_ROOTCERT_FILE} \ | |
--peerAddresses peer0.org1.example.com:7051 \ | |
--tlsRootCertFiles ${ORG1_TLS_ROOTCERT_FILE} | |
echo "Waiting for instantiation request to be committed ..." | |
sleep 20 | |
cat <<EOF | |
Total setup execution time : $(($(date +%s) - starttime)) secs ... | |
Chaincode Update Successful | |
EOF |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment