Files
CMake/.gitlab/ci/ctest_test.cmake
T
Ben Boeckel 6317f92120 ci: pay attention to the machine load when running tests
CMake's test suite is sensitive to machine load and can cause spurious
timeouts. To acknowledge this, prevent CTest from spawning tests into a
busy machine.
2021-04-06 11:16:09 -04:00

31 lines
746 B
CMake

cmake_minimum_required(VERSION 3.8)
include("${CMAKE_CURRENT_LIST_DIR}/gitlab_ci.cmake")
# Read the files from the build directory.
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
# Pick up from where the configure left off.
ctest_start(APPEND)
include(ProcessorCount)
ProcessorCount(nproc)
if (NOT "$ENV{CTEST_MAX_PARALLELISM}" STREQUAL "")
if (nproc GREATER "$ENV{CTEST_MAX_PARALLELISM}")
set(nproc "$ENV{CTEST_MAX_PARALLELISM}")
endif ()
endif ()
include("${CMAKE_CURRENT_LIST_DIR}/ctest_exclusions.cmake")
ctest_test(
PARALLEL_LEVEL "${nproc}"
TEST_LOAD "${nproc}"
RETURN_VALUE test_result
EXCLUDE "${test_exclusions}")
ctest_submit(PARTS Test)
if (test_result)
message(FATAL_ERROR
"Failed to test")
endif ()