github.com/bestbeforetoday/fabric-ca@v2.0.0-alpha+incompatible/scripts/fvt/reregister_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  SCRIPTDIR="$FABRIC_CA/scripts/fvt"
    10  . $SCRIPTDIR/fabric-ca_utils
    11  
    12  REGISTRAR="admin"
    13  REGIRSTRARPWD="adminpw"
    14  USERNAME="testuser99"
    15  HTTP_PORT="3755"
    16  RC=0
    17  
    18  NUM_SERVERS=4
    19  NUM_BAD_REQ=16
    20  
    21  while getopts "dx:" option; do
    22    case "$option" in
    23       d)   FABRIC_CA_DEBUG="true" ;;
    24       x)   CA_CFG_PATH="$OPTARG" ;;
    25    esac
    26  done
    27  
    28  : ${CA_CFG_PATH:="/tmp/reregister"}
    29  : ${FABRIC_CA_DEBUG="false"}
    30  : ${HOST="localhost:10888"}
    31  export CA_CFG_PATH
    32  export FABRIC_CA_CLIENT_HOME="$CA_CFG_PATH/$REGISTRAR"
    33  
    34  cd $TESTDATA
    35  python -m SimpleHTTPServer $HTTP_PORT &
    36  HTTP_PID=$!
    37  pollSimpleHttp
    38  echo $HTTP_PID
    39  trap "kill $HTTP_PID; CleanUp 1; exit 1" INT
    40  
    41  export FABRIC_CA_DEBUG
    42  for driver in sqlite3 postgres mysql; do
    43     $SCRIPTDIR/fabric-ca_setup.sh -R -x $CA_CFG_PATH -d $driver
    44     $SCRIPTDIR/fabric-ca_setup.sh -I -S -X -n $NUM_SERVERS -t rsa -l 2048 -d $driver -x $CA_CFG_PATH
    45     if test $? -ne 0; then
    46        ErrorMsg "Failed to setup fabric-ca server"
    47        continue
    48     fi
    49  
    50     enroll $REGISTRAR $REGIRSTRARPWD
    51     if test $? -ne 0; then
    52        ErrorMsg "Failed to enroll $REGISTRAR"
    53        continue
    54     fi
    55  
    56     register $REGISTRAR ${USERNAME}
    57     if test $? -ne 0; then
    58        ErrorMsg "Failed to register $USERNAME"
    59        continue
    60     fi
    61  
    62     for u in $(eval echo {1..$NUM_BAD_REQ}); do
    63        register $REGISTRAR $USERNAME
    64        test $? -eq 0 && ErrorMsg "Duplicate registration of $USERNAME"
    65     done
    66  
    67     # all servers should register = number of successful requests
    68     # but...it's only available when tls is disabled
    69     if ! $(${FABRIC_TLS:-false}); then
    70        nums=$((NUM_SERVERS-1))
    71        for s in $(eval echo {0..$nums}); do
    72           curl -s http://${HOST}/ | awk -v s="server${s}" '$0~s'|html2text|grep HTTP
    73           verifyServerTraffic $HOST server${s} 0 0 "HTTP 4xx" gt
    74           test $? -eq 0 || ErrorMsg "verifyServerTraffic failed"
    75           sleep .1
    76        done
    77     fi
    78  
    79     $SCRIPTDIR/fabric-ca_setup.sh -L -d $driver
    80  done
    81  $SCRIPTDIR/fabric-ca_setup.sh -R -x $CA_CFG_PATH -d $driver
    82  kill $HTTP_PID
    83  wait $HTTP_PID
    84  CleanUp "$RC"
    85  exit $RC