blob: 7ce892e3a27d887f269ab6ec025e8b5ff5268db1 [file] [log] [blame]
#!/bin/bash
set -x
# Enter build directory.
rootdir=`pwd`
cd ${EIGEN_CI_BUILDDIR}
target=""
if [[ ${EIGEN_CI_TEST_REGEX} ]]; then
target="-R ${EIGEN_CI_TEST_REGEX}"
elif [[ ${EIGEN_CI_TEST_LABEL} ]]; then
target="-L ${EIGEN_CI_TEST_LABEL}"
fi
# Repeat tests up to three times to ignore flakes. Do not re-run with -T test,
# otherwise we lose test results for those that passed.
# Note: starting with CMake 3.17, we can use --repeat until-pass:3, but we have
# no way of easily installing this on ppc64le.
ctest --parallel ${NPROC} --output-on-failure --no-compress-output \
--build-no-clean -T test ${target} || \
ctest -j${NPROC} --output-on-failure --no-compress-output --rerun-failed || \
ctest -j${NPROC} --output-on-failure --no-compress-output --rerun-failed
# Return to root directory.
cd ${rootdir}
set +x