1#!/bin/bash 2 3set -e 4 5# This script assumes that galera cluster is alredy installed and configured 6 7# This is location of this script. _HOME suffix preferred to _ROOT to avoid 8# confusion 9THIS_HOME=$(cd $(dirname $0); pwd -P) 10 11# Optional configuration file 12if test -n "$GALERA_TEST_CONFIG" 13then 14. "$GALERA_TEST_CONFIG" 15fi 16 17GALERA_TESTS_HOME=${GALERA_TESTS_HOME:-$THIS_HOME} 18GALERA_RESULTS_HOME=${GALERA_RESULTS_HOME:-$GALERA_TESTS_HOME/results} 19 20# Incoming cluster address (load balancer) 21export GALERA_CLUSTER_IP=${GALERA_CLUSTER_IP:-"127.0.0.1"} 22export GALERA_CLUSTER_PORT=${GALERA_CLUSTER_PORT:-3306} 23 24# List of tests to run 25GALERA_TESTS=${GALERA_TESTS:-"sqlgen dbt2 dots"} 26 27# This is needed for native load balancing and consistency checking 28export GALERA_NODES_IPS=${GALERA_NODE_IPS:?"GALERA_NODE_IPS not set"} 29export GALERA_NODES_PORTS=${GALERA_NODE_PORTS:?"GALERA_NODE_PORTS not set"} 30 31 32# Create a results directory for this run 33GALERA_DATE=$(date +%Y-%m-%d_%H:%M:%S) 34mkdir -p $GALERA_RESULTS_HOME/$GALERA_DATE 35 36declare TESTS_FAILED 37TESTS_FAILED=0 38for TEST in $GALERA_TESTS 39do 40 export GALERA_RESULT_DIR=$GALERA_RESULTS_HOME/$GALERA_DATE/$TEST 41 mkdir -p $GALERA_RESULT_DIR 42 echo -n "Running $TEST... " 43 $GALERA_TESTS_HOME/test_$TEST/run.sh && echo "passed" \ 44 || { TESTS_FAILED=$[ $TESTS_FAILED + 1 ]; echo "failed"; } 45done 46 47if [ $TESTS_FAILED != "0" ] 48then 49 echo "Tests failed: $TESTS_FAILED" 50 exit 1 51fi 52 53# 54