#!/usr/bin/env bash # Run everything in the exercises/ directory that isn't explicitly disabled # comma separated list of script basenames to skip # to refrain from exercising euca.sh use SKIP_EXERCISES=euca SKIP_EXERCISES=${SKIP_EXERCISES:-""} # Locate the scripts we should run EXERCISE_DIR=$(dirname "$0")/exercises basenames=$(for b in `ls $EXERCISE_DIR/*.sh` ; do basename $b .sh ; done) # Track the state of each script passes="" failures="" skips="" # Loop over each possible script (by basename) for script in $basenames ; do if [[ "$SKIP_EXERCISES" =~ $script ]] ; then skips="$skips $script" else echo ========================= echo Running $script echo ========================= $EXERCISE_DIR/$script.sh if [[ $? -ne 0 ]] ; then failures="$failures $script" else passes="$passes $script" fi fi done # output status of exercise run echo ========================= echo ========================= for script in $skips ; do echo SKIP $script done for script in $passes ; do echo PASS $script done for script in $failures ; do echo FAILED $script done