#!/bin/bash # this bash script will loop through all the .sh files under bin/tests # execute the script and check the result (exit code) to see if # there's any error echo "IMPORTANT: this script should be run by the CI (e.g. Shippable) only. There's no need to run this script manually." echo "Please press CTRL+C to stop or the script will continue in 10 seconds." sleep 10 successes=0 failures=0 for SCRIPT in $(ls -l ./bin/tests/*.sh | grep -v all) do if [ -f ${SCRIPT} -a -x ${SCRIPT} ]; then echo "Running $SCRIPT (output to /dev/null)" ${SCRIPT} 2>&1 > /dev/null rc=$? if [[ ${rc} != 0 ]]; then >&2 echo "ERROR!! FAILED TO RUN ${SCRIPT}" ((failures+=1)) else ((successes+=1)) fi fi done if (( failures > 0 )); then >&2 echo "[ERROR] ${failures} out of $((failures+successes)) scripts failed." exit 1 else echo "[SUCCESS] ${successes} generators finished." fi