Merge topic 'correct_ubuntu1604_gcc48_test_failures'

5c16b3be2 ubuntu1604 builders now use the correct c && c++ compilers
3c80b35b8 ubuntu1604 test step needs to know where MPI install location is
889cb33dd gitlab-ci test jobs better handle false positive failures
b2823d79a ubuntu1604 gcc48 builder install test now pass
93cbea2d7 Update README with update CMake and compiler tested versions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2042
This commit is contained in:
Robert Maynard 2020-04-16 18:58:32 +00:00 committed by Kitware Robot
commit 2aa4928f7a
3 changed files with 45 additions and 13 deletions

@ -39,6 +39,33 @@ if(NOT DEFINED ENV{GITLAB_CI_EMULATION})
endif()
if (test_result)
message(FATAL_ERROR
"Failed to test")
#Current ctest return value only tracks if tests failed on the initial run.
#So when we use repeat unit pass, and all tests now succede ctest will still
#report a failure, making our gitlab-ci pipeline look red when it isn't
#
#To work around this issue we check if `Testing/Temporary/LastTestsFailed_*.log`
#has a listing of tests that failed.
set(testing_log_dir "$ENV{CI_PROJECT_DIR}/build/Testing/Temporary")
file(GLOB tests_that_failed_log "${testing_log_dir}/LastTestsFailed_*.log")
if(tests_that_failed_log)
#Make sure the file has tests listed
set(has_failing_tests true)
file(STRINGS "${tests_that_failed_log}" failed_tests)
list(LENGTH failed_tests length)
if(length LESS_EQUAL 1)
# each line looks like NUM:TEST_NAME
string(FIND "${failed_tests}" ":" location)
if(location EQUAL -1)
#no ":" so no tests actually failed after all the re-runs
set(has_failing_tests false)
endif()
endif()
if(has_failing_tests)
message(STATUS "Failing test from LastTestsFailed.log: \n ${failed_tests}")
message(FATAL_ERROR "Failed to test")
endif()
endif()
endif ()

@ -13,6 +13,8 @@ build:ubuntu1604_gcc5:
- .cmake_build_linux
- .only-default
variables:
CC: "gcc-5"
CXX: "g++-5"
CMAKE_BUILD_TYPE: RelWithDebInfo
VTKM_SETTINGS: "cuda+pascal"
@ -60,12 +62,12 @@ build:ubuntu1604_gcc48:
- docker
- linux
extends:
#Requires the cuda docker image as it uses a sufficiently new
#enough CMake version that supports mpi
- .ubuntu1604_cuda
- .ubuntu1604
- .cmake_build_linux
- .only-default
variables:
CC: "gcc-4.8"
CXX: "g++-4.8"
CMAKE_BUILD_TYPE: Release
#custom openmpi install location
CMAKE_PREFIX_PATH: "/opt/openmpi/"
@ -85,6 +87,9 @@ test:ubuntu1604_gcc48:
#env flags to allow openmpi to run as root user
OMPI_ALLOW_RUN_AS_ROOT: 1
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
#mpi location so that `built_against_test_install` tests
#pass
CMAKE_PREFIX_PATH: "/opt/openmpi/"
dependencies:
- build:ubuntu1604_gcc48
@ -107,6 +112,8 @@ build:ubuntu1604_clang5:
- .cmake_build_linux
- .only-default
variables:
CC: "clang-5.0"
CXX: "clang++-5.0"
CMAKE_BUILD_TYPE: Debug
VTKM_SETTINGS: "tbb+static+64bit_floats"

@ -70,9 +70,7 @@ VTK-m Requires:
+ MSVC 2015+
+ Intel 17.0.4+
+ [CMake](http://www.cmake.org/download/)
+ CMake 3.8+
+ CMake 3.11+ (for Visual Studio generator)
+ CMake 3.12+ (for OpenMP support)
+ CMake 3.12+
+ CMake 3.13+ (for CUDA support)
Optional dependencies are:
@ -105,18 +103,18 @@ Optional dependencies are:
VTK-m has been tested on the following configurations:c
+ On Linux
+ GCC 4.8.5, 5.4.0, 6.4.0, 7.3.0, Clang 5.0, 6.0, 7.0, Intel 17.0.4, Intel 19.0.0
+ CMake 3.13.3, 3.14.1
+ CUDA 9.2.148, 10.0.130, 10.1.105
+ GCC 4.8.5, 5.4, 6.5, 7.4, 8.2, 9.2; Clang 5, 8; Intel 17.0.4; 19.0.0
+ CMake 3.12, 3.13, 3.16, 3.17
+ CUDA 9.2.148, 10.0.130, 10.1.105, 10.2.89
+ TBB 4.4 U2, 2017 U7
+ On Windows
+ Visual Studio 2015, 2017
+ CMake 3.8.2, 3.11.1, 3.12.4
+ CMake 3.12, 3.17
+ CUDA 10.1
+ TBB 2017 U3, 2018 U2
+ On MacOS
+ AppleClang 9.1
+ CMake 3.12.3
+ CMake 3.12
+ TBB 2018