github.com/cactusblossom/fabric-ca@v0.0.0-20200611062428-0082fc643826/scripts/fvt/staging/defaults_test.sh (about) 1 #!/bin/bash 2 # 3 # Copyright IBM Corp. All Rights Reserved. 4 # 5 # SPDX-License-Identifier: Apache-2.0 6 # 7 8 FABRIC_CA="$GOPATH/src/github.com/hyperledger/fabric-ca" 9 FABRIC_EXEC="$FABRIC_CA/bin/fabric-ca" 10 SCRIPTDIR="$FABRIC_CA/scripts/fvt" 11 TESTDATA="$FABRIC_CA/testdata" 12 DST_KEY=$TESTDATA/ec-key.pem 13 DST_CERT=$TESTDATA/ec.pem 14 RUNCONFIG=$TESTDATA/testconfig.json 15 FABRIC_PID="" 16 . $SCRIPTDIR/fabric-ca_utils 17 RC=0 18 19 function startFabricCa() { 20 local start=$SECONDS 21 local timeout=8 22 local now=0 23 # if not explcitly set, use default 24 if test -n "$1"; then 25 local server_addr="-address $1" 26 local addr=$1 27 fi 28 if test -n "$2"; then 29 local server_port="-port $2" 30 local port="$2" 31 fi 32 33 $FABRIC_EXEC server start $server_addr $server_port -ca $DST_CERT -ca-key $DST_KEY -config $RUNCONFIG & 34 FABRIC_PID=$! 35 until test "$started" = "${addr-127.0.0.1}:${port-$CA_DEFAULT_PORT}" -o "$now" -gt "$timeout"; do 36 started="$(ss -ltnp src "${addr-127.0.0.1}:${port-$CA_DEFAULT_PORT}" | awk 'NR!=1 {print $4}')" 37 sleep .5 38 let now+=1 39 done 40 test "$started" = "${addr-127.0.0.1}:${port-$CA_DEFAULT_PORT}" && return 0 || return 1 41 } 42 43 startFabricCa 44 test $? -ne 0 && ErrorMsg "Server start default addr/port failed" 45 kill $FABRIC_PID 46 wait $FABRIC_PID 47 48 startFabricCa 127.0.0.2 3755 49 test $? -ne 0 && ErrorMsg "Server start user-defined addr/port failed" 50 echo $? 51 kill $FABRIC_PID 52 wait $FABRIC_PID 53 54 CleanUp $RC 55 exit $RC