diff --git a/run.sh b/run.sh new file mode 100644 index 0000000000000000000000000000000000000000..b261537e7c5d9976569a5ecbbc31f80d9def0294 --- /dev/null +++ b/run.sh @@ -0,0 +1,38 @@ +#!/bin/bash +# Entry script to start Xvfb and set display +set -e + +# Set the defaults +DEFAULT_LOG_LEVEL="INFO" # Available levels: TRACE, DEBUG, INFO (default), WARN, NONE (no logging) +DEFAULT_RES="1280x1024x24" +DEFAULT_DISPLAY=":99" + +# Use default if none specified as env var +LOG_LEVEL=${LOG_LEVEL:-$DEFAULT_LOG_LEVEL} +RES=${RES:-$DEFAULT_RES} +DISPLAY=${DISPLAY:-$DEFAULT_DISPLAY} + +if [[ -z ${ROBOT_TESTS} ]]; + then + echo "Error: Please specify the robot test or directory as env var ROBOT_TESTS" + exit 1 +fi + +if [[ -z ${OUTPUT_DIR} ]]; + then + echo "Error: Please specify the output directory as env var OUTPUT_DIR" + exit 1 +fi + +# Start Xvfb +echo -e "Starting Xvfb on display ${DISPLAY} with res ${RES}" +Xvfb ${DISPLAY} -ac -screen 0 ${RES} +extension RANDR & +export DISPLAY=${DISPLAY} + +# Execute tests +echo -e "Executing robot tests at log level ${LOG_LEVEL}" + +robot --loglevel ${LOG_LEVEL} --outputdir ${OUTPUT_DIR} ${ROBOT_TESTS} + +# Stop Xvfb +kill -9 $(pgrep Xvfb)