blob: f4fc34e5326e6060cdd76087c101d1761dd166e4 [file] [log] [blame]
#!/bin/bash -x
# Extract and run the OpenBMC robot test suite
#
# The robot test results will be copied to ${HOME}
#
# Requires following env variables be set:
# IP_ADDR IP Address of openbmc
# SSH_PORT SSH port of openbmc
# HTTPS_PORT HTTPS port of openbmc
#
# Optional env variable
# ROBOT_CODE_HOME Location to extract the code
# Default will be a temp location in /tmp/
# ROBOT_TEST_CMD Command to execute from within obmc robot test framework
# Default will be "tox -e qemu -- --include QEMU_CI tests"
# MACHINE Type of system to run tests against
# Default is qemu
# we don't want to fail on bad rc since robot tests may fail
MACHINE=${MACHINE:-"qemu"}
ROBOT_CODE_HOME=${ROBOT_CODE_HOME:-/tmp/$(whoami)/${RANDOM}/obmc-robot/}
ROBOT_TEST_CMD=${ROBOT_TEST_CMD:-"python3 -m robot\
-v OPENBMC_HOST:${IP_ADDR}\
-v SSH_PORT:${SSH_PORT}\
-v HTTPS_PORT:${HTTPS_PORT}\
--argumentfile ./test_lists/QEMU_CI ./tests"}
git clone https://github.com/openbmc/openbmc-test-automation.git \
${ROBOT_CODE_HOME}
cd ${ROBOT_CODE_HOME}
chmod ugo+rw -R ${ROBOT_CODE_HOME}/*
# Execute the CI tests
"$($ROBOT_TEST_CMD)"
cp ${ROBOT_CODE_HOME}/*.xml ${HOME}/
cp ${ROBOT_CODE_HOME}/*.html ${HOME}/
if [ -d logs ] ; then
cp -Rf ${ROBOT_CODE_HOME}/logs ${HOME}/ ;
fi
#rm -rf ${ROBOT_CODE_HOME}