matiru
Blockchain-Based Supply Chain Transparency for Agricultural Producegit clone https://github.com/maydayv7/matiru
fabric/network/scripts/setAnchorPeer.sh (1609B)
1#!/usr/bin/env bash
2
3. scripts/envVar.sh
4. scripts/configUpdate.sh
5
6createAnchorPeerUpdate() {
7 infoln "Fetching channel config for channel $CHANNEL_NAME"
8 fetchChannelConfig $ORG $CHANNEL_NAME ${CORE_PEER_LOCALMSPID}config.json
9
10 infoln "Generating anchor peer update transaction for Org${ORG} on channel $CHANNEL_NAME"
11
12 if [ $ORG -eq 1 ]; then
13 HOST="peer0.org1.example.com"
14 PORT=7051
15 elif [ $ORG -eq 2 ]; then
16 HOST="peer0.org2.example.com"
17 PORT=9051
18 elif [ $ORG -eq 3 ]; then
19 HOST="peer0.org3.example.com"
20 PORT=11051
21 elif [ $ORG -eq 4 ]; then
22 HOST="peer0.org4.example.com"
23 PORT=13051
24 else
25 errorln "Org${ORG} unknown"
26 fi
27
28 set -x
29 jq '.channel_group.groups.Application.groups.'${CORE_PEER_LOCALMSPID}'.values += {"AnchorPeers":{"mod_policy": "Admins","value":{"anchor_peers": [{"host": "'$HOST'","port": '$PORT'}]},"version": "0"}}' ${CORE_PEER_LOCALMSPID}config.json > ${CORE_PEER_LOCALMSPID}modified_config.json
30 { set +x; } 2>/dev/null
31
32 createConfigUpdate ${CHANNEL_NAME} ${CORE_PEER_LOCALMSPID}config.json ${CORE_PEER_LOCALMSPID}modified_config.json ${CORE_PEER_LOCALMSPID}anchors.tx
33}
34
35updateAnchorPeer() {
36 peer channel update -o orderer.example.com:7050 --ordererTLSHostnameOverride orderer.example.com -c $CHANNEL_NAME -f ${CORE_PEER_LOCALMSPID}anchors.tx --tls --cafile "$ORDERER_CA" >&log.txt
37 res=$?
38 cat log.txt
39 verifyResult $res "Anchor peer update failed"
40 successln "Anchor peer set for org '$CORE_PEER_LOCALMSPID' on channel '$CHANNEL_NAME'"
41}
42
43ORG=$1
44CHANNEL_NAME=$2
45setGlobalsCLI $ORG
46
47createAnchorPeerUpdate
48
49updateAnchorPeer