github.com/pingcap/chaos@v0.0.0-20190710112158-c86faf4b3719/scripts/test.sh (about)

     1  #!/bin/bash
     2  
     3  for bin in $@; do
     4      case $bin in
     5      'tidb' )
     6          suit=chaos-tidb
     7          cases=( bank multi_bank )
     8          nemeses=( random_kill random_drop )
     9          ;;
    10      'rawkv' )
    11          suit=chaos-rawkv
    12          cases=( register )
    13          # TODO: add random_drop, chaos can not heal drop nemesis sometime.
    14          nemeses=( random_kill  )
    15          ;;
    16      'txnkv' )
    17          suit=chaos-txnkv
    18          cases=( register )
    19          nemeses=( random_kill  )
    20          ;;
    21      '--help' )
    22          HELP=1
    23          ;;
    24      *)
    25          echo "unknown option $1"
    26          exit 1
    27          ;;
    28      esac
    29      shift
    30  done
    31  
    32  if [ "$HELP" ]; then
    33      echo "usage: $0 [OPTION]"
    34      echo "  tidb                                           Chaos test TiDB"
    35      echo "  rawkv                                          Chaos test RawKV"
    36      echo "  txnkv                                          Chaos test TxnKV"
    37      echo "  --help                                         Display this message"
    38      exit 0
    39  fi
    40  
    41  mkdir -p var
    42  
    43  for i in "${cases[@]}"
    44  do
    45      for j in "${nemeses[@]}"
    46      do
    47          history_log=./var/history_"$suit"_"$i"_"$j".log
    48          echo "run $i with nemeses $j"
    49          ./bin/$suit \
    50              --case $i \
    51              --nemesis $j \
    52              --history $history_log \
    53              --request-count 200 \
    54              --round 10
    55      done
    56  done