vtk-m/.gitlab-ci.yml

221 lines
5.3 KiB
YAML
Raw Normal View History

2020-03-11 18:16:04 +00:00
# Docker Images:
#
# * .gitlab/ci/docker/centos7/cuda10.2/
# - cuda
# - gcc 7.3.1
2020-04-17 19:06:29 +00:00
# * .gitlab/ci/docker/centos8/base/
# - gcc 8.3.1
# - clang 8.0.1
# - openmp
# - asan, ubsan
# * .gitlab/ci/docker/rhel8/cuda10.2/
2020-03-11 18:16:04 +00:00
# - cuda
# - gcc 8.2.1
2020-04-17 19:06:29 +00:00
# * .gitlab/ci/docker/ubuntu1604/base/
# - gcc 5.4.0
2020-03-11 18:16:04 +00:00
# - clang 3.8
# - clang 5.0
# - tbb
# - openmpi
2020-04-17 19:06:29 +00:00
# * .gitlab/ci/docker/ubuntu1604/cuda9.2/
2020-03-11 18:16:04 +00:00
# - cuda
# - gcc 5.4
# - tbb
# - openmp
# - openmpi
2020-04-17 19:06:29 +00:00
# * .gitlab/ci/docker/ubuntu1804/base/
# - gcc 6.5
2020-03-11 18:16:04 +00:00
# - gcc 7.4
# - gcc 9
# - clang 8
# - tbb
# - openmp
# - mpich2
2021-01-07 16:56:27 +00:00
# - hdf5
# * .gitlab/ci/docker/ubuntu1804/cuda11.1/
2020-03-11 18:16:04 +00:00
# - cuda
# - gcc 7
# - gcc 8
2020-03-11 18:16:04 +00:00
# - tbb
# - openmp
# - mpich2
# * .gitlab/ci/docker/ubuntu2004/doxygen/
# - gcc 9.3
# - tbb
# - openmp
# - mpich2
2020-03-11 18:16:04 +00:00
.docker_image: &docker_image
variables:
GIT_CLONE_PATH: $CI_BUILDS_DIR/gitlab-kitware-sciviz-ci
.centos7: &centos7
image: "kitware/vtkm:ci-centos7_cuda10.2-20210128"
2020-03-11 18:16:04 +00:00
extends:
- .docker_image
2020-04-17 19:06:29 +00:00
.centos8: &centos8
image: "kitware/vtkm:ci-centos8-20201016"
2020-04-17 19:06:29 +00:00
extends:
- .docker_image
2020-03-11 18:16:04 +00:00
.rhel8: &rhel8
image: "kitware/vtkm:ci-rhel8_cuda10.2-20201016"
2020-06-16 12:54:01 +00:00
extends:
- .docker_image
2020-03-11 18:16:04 +00:00
.ubuntu1604: &ubuntu1604
image: "kitware/vtkm:ci-ubuntu1604-20201016"
2020-03-11 18:16:04 +00:00
extends:
- .docker_image
.ubuntu1604_cuda: &ubuntu1604_cuda
image: "kitware/vtkm:ci-ubuntu1604_cuda9.2-20201016"
2020-03-11 18:16:04 +00:00
extends:
- .docker_image
.ubuntu1804: &ubuntu1804
2021-01-07 16:56:27 +00:00
image: "kitware/vtkm:ci-ubuntu1804-20210107"
2020-03-11 18:16:04 +00:00
extends:
- .docker_image
.ubuntu1804_cuda: &ubuntu1804_cuda
image: "kitware/vtkm:ci-ubuntu1804_cuda11.1-20201016"
2020-03-11 18:16:04 +00:00
extends:
- .docker_image
.ubuntu1804_cuda_kokkos: &ubuntu1804_cuda_kokkos
image: "kitware/vtkm:ci-ubuntu1804_cuda11_kokkos-20201016"
extends:
- .docker_image
.ubuntu2004_doxygen: &ubuntu2004_doxygen
image: "kitware/vtkm:ci-doxygen-20201016"
extends:
- .docker_image
2020-06-16 12:54:01 +00:00
.ubuntu2004_kokkos: &ubuntu2004_kokkos
image: "kitware/vtkm:ci-ubuntu2004_kokkos-20201016"
2020-06-16 12:54:01 +00:00
extends:
- .docker_image
.only-default: &only-default
only:
- master@vtk/vtk-m
- tags@vtk/vtk-m
- merge_requests
.only-master: &only-master
only:
- master@vtk/vtk-m
2020-03-11 18:16:04 +00:00
2020-03-11 18:16:04 +00:00
# General Longer Term Tasks:
# - Setup clang tidy as sub-pipeline
# - Setup a machine to replicate the issue in https://gitlab.kitware.com/vtk/vtk-m/-/issues/447
2020-03-11 18:16:04 +00:00
# Note: Centos7 doesn't work as they ship separate standard library
# headers for each version. We will have to figure out something else
# like using spack or building llvm/clang from source
stages:
- build
- test
.cmake_build_linux: &cmake_build_linux
stage: build
timeout: 2 hours
interruptible: true
before_script:
- .gitlab/ci/config/sccache.sh
- export PATH=$PWD/.gitlab:$PATH
- SCCACHE_IDLE_TIMEOUT=0 sccache --start-server
2020-03-11 18:16:04 +00:00
- sccache --show-stats
- .gitlab/ci/config/google_benchmarks.sh
2020-03-11 18:16:04 +00:00
- "cmake --version"
- "cmake -V -P .gitlab/ci/config/fetch_vtkm_tags.cmake"
2020-03-11 18:16:04 +00:00
- "cmake -V -P .gitlab/ci/config/gitlab_ci_setup.cmake"
- "ctest -VV -S .gitlab/ci/ctest_configure.cmake"
script:
2020-03-11 18:16:04 +00:00
- "ctest -VV -S .gitlab/ci/ctest_build.cmake"
- sccache --show-stats
artifacts:
expire_in: 24 hours
when: always
paths:
# The artifacts of the build.
- build/bin/
- build/include/
- build/vtkm/thirdparty/diy/vtkmdiy/
2020-03-11 18:16:04 +00:00
- build/lib/
# CTest and CMake install files.
# XXX(globbing): Can be simplified with support from
# https://gitlab.com/gitlab-org/gitlab-runner/issues/4840
#
# Note: this also captures our CIState.cmake file
- build/CMakeCache.txt
- build/*.cmake
- build/*/*.cmake
- build/*/*/*.cmake
- build/*/*/*/*.cmake
- build/*/*/*/*/*.cmake
- build/*/*/*/*/*/*.cmake
- build/Testing/
# CDash files.
- build/DartConfiguration.tcl
.cmake_test_linux: &cmake_test_linux
stage: test
timeout: 50 minutes
2020-03-11 18:16:04 +00:00
interruptible: true
script:
#Need to use our custom ctest-latest symlink
#This will allow us to use 3.17+ which has support
#for running failed tests multiple times so failures
#due to system load are not reported
- "ctest-latest -VV -S .gitlab/ci/ctest_test.cmake"
artifacts:
expire_in: 24 hours
when: always
paths:
# The generated regression testing images
- build/*.png
- build/*.pnm
- build/*.pmm
- build/*/*.png
- build/*/*.pnm
- build/*/*.pmm
- build/*/*/*.png
- build/*/*/*.pnm
- build/*/*/*.pmm
- build/*/*/*/*.png
- build/*/*/*/*.pnm
- build/*/*/*/*.pmm
2020-03-11 18:16:04 +00:00
2020-04-17 19:06:29 +00:00
.cmake_memcheck_linux: &cmake_memcheck_linux
stage: test
timeout: 2 hours
interruptible: true
script:
- "ctest-latest -VV -S .gitlab/ci/ctest_memcheck.cmake"
artifacts:
expire_in: 24 hours
when: always
paths:
# The generated regression testing images
- build/*.png
- build/*.pnm
- build/*.pmm
2020-04-17 19:06:29 +00:00
2020-03-11 18:16:04 +00:00
include:
- local: '/.gitlab/ci/centos7.yml'
2020-04-17 19:06:29 +00:00
- local: '/.gitlab/ci/centos8.yml'
- local: '/.gitlab/ci/doxygen.yml'
2020-03-11 18:16:04 +00:00
- local: '/.gitlab/ci/rhel8.yml'
- local: '/.gitlab/ci/ubuntu1604.yml'
- local: '/.gitlab/ci/ubuntu1804.yml'
2020-06-16 12:54:01 +00:00
- local: '/.gitlab/ci/ubuntu2004.yml'
- local: '/.gitlab/ci/windows10.yml'