#!/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