2023-07-24 19:54:11 +00:00
|
|
|
##=============================================================================
|
|
|
|
##
|
|
|
|
## Copyright (c) Kitware, Inc.
|
|
|
|
## All rights reserved.
|
|
|
|
## See LICENSE.txt for details.
|
|
|
|
##
|
|
|
|
## This software is distributed WITHOUT ANY WARRANTY; without even
|
|
|
|
## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
|
|
## PURPOSE. See the above copyright notice for more information.
|
|
|
|
##
|
|
|
|
##=============================================================================
|
|
|
|
|
2020-03-11 18:16:04 +00:00
|
|
|
.docker_image: &docker_image
|
|
|
|
variables:
|
|
|
|
GIT_CLONE_PATH: $CI_BUILDS_DIR/gitlab-kitware-sciviz-ci
|
|
|
|
|
|
|
|
.centos7: ¢os7
|
2021-02-08 16:12:29 +00:00
|
|
|
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: ¢os8
|
2020-10-13 13:46:25 +00:00
|
|
|
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
|
2020-10-13 13:46:25 +00:00
|
|
|
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
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu1604-20230906"
|
2020-03-11 18:16:04 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
|
|
|
.ubuntu1604_cuda: &ubuntu1604_cuda
|
2020-10-13 13:46:25 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu1604_cuda9.2-20201016"
|
2020-03-11 18:16:04 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
|
|
|
.ubuntu1804: &ubuntu1804
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu1804-20230906"
|
2020-03-11 18:16:04 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
|
|
|
.ubuntu1804_cuda: &ubuntu1804_cuda
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu1804_cuda11-20230906"
|
2020-03-11 18:16:04 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2020-08-12 17:56:48 +00:00
|
|
|
.ubuntu1804_cuda_kokkos: &ubuntu1804_cuda_kokkos
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu1804_cuda11_kokkos-20230906"
|
2020-08-12 17:56:48 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2020-05-29 20:00:17 +00:00
|
|
|
.ubuntu2004_doxygen: &ubuntu2004_doxygen
|
2023-10-20 16:36:50 +00:00
|
|
|
image: "kitware/vtkm:ci-doxygen-20231020"
|
2020-05-29 20:00:17 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2021-09-20 20:59:10 +00:00
|
|
|
.ubuntu2004: &ubuntu2004
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu2004-20230906"
|
2021-09-20 20:59:10 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2020-06-16 12:54:01 +00:00
|
|
|
.ubuntu2004_kokkos: &ubuntu2004_kokkos
|
2023-09-06 22:37:51 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu2004_kokkos-20230906"
|
2020-06-16 12:54:01 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
2020-05-29 20:00:17 +00:00
|
|
|
|
2021-10-13 19:40:52 +00:00
|
|
|
.ubuntu2004_hip_kokkos: &ubuntu2004_hip_kokkos
|
2023-02-21 16:01:38 +00:00
|
|
|
image: "kitware/vtkm:ci-ubuntu2004_hip_kokkos-20230220"
|
2021-10-13 19:40:52 +00:00
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2023-06-19 18:27:45 +00:00
|
|
|
.opensuse: &opensuse
|
|
|
|
image: "kitware/vtkm:ci-opensuse-20230619"
|
|
|
|
extends:
|
|
|
|
- .docker_image
|
|
|
|
|
2021-10-18 18:36:16 +00:00
|
|
|
.run_automatically: &run_automatically
|
2021-10-15 19:37:27 +00:00
|
|
|
rules:
|
|
|
|
- if: '$CI_MERGE_REQUEST_ID'
|
|
|
|
when: on_success
|
|
|
|
- if: '$CI_PROJECT_PATH == "vtk/vtk-m"'
|
|
|
|
when: on_success
|
|
|
|
- when: never
|
|
|
|
|
2022-10-25 19:41:12 +00:00
|
|
|
.run_only_merge_requests: &run_only_merge_requests
|
|
|
|
rules:
|
|
|
|
- if: '$CI_MERGE_REQUEST_ID && $CI_PROJECT_PATH == "vtk/vtk-m"'
|
|
|
|
when: on_success
|
|
|
|
- when: never
|
|
|
|
|
2021-10-18 18:36:16 +00:00
|
|
|
.run_scheduled: &run_scheduled
|
2021-10-13 19:40:52 +00:00
|
|
|
rules:
|
2021-10-18 18:36:16 +00:00
|
|
|
- if: '$CI_PROJECT_PATH == "vtk/vtk-m" && $CI_COMMIT_TAG'
|
2021-10-15 19:37:27 +00:00
|
|
|
when: on_success
|
2021-10-18 18:36:16 +00:00
|
|
|
- if: '$CI_PROJECT_PATH == "vtk/vtk-m" && $CI_PIPELINE_SOURCE == "schedule"'
|
2021-10-15 19:37:27 +00:00
|
|
|
when: on_success
|
2021-10-13 19:40:52 +00:00
|
|
|
- when: never
|
|
|
|
|
2022-08-05 01:58:58 +00:00
|
|
|
.run_upstream_branches: &run_upstream_branches
|
2021-10-18 18:36:16 +00:00
|
|
|
rules:
|
2022-08-05 01:58:58 +00:00
|
|
|
- if: '$CI_PROJECT_PATH == "vtk/vtk-m" && $CI_MERGE_REQUEST_ID == null'
|
2021-10-18 18:36:16 +00:00
|
|
|
when: on_success
|
|
|
|
- when: never
|
2020-05-29 20:00:17 +00:00
|
|
|
|
2022-10-25 19:41:12 +00:00
|
|
|
.run_ascent_ci: &run_ascent_ci
|
2021-12-14 21:42:25 +00:00
|
|
|
rules:
|
|
|
|
- if: '$CI_PROJECT_PATH == "ecpcitest/vtk-m"'
|
|
|
|
when: on_success
|
|
|
|
- when: never
|
|
|
|
|
2023-03-13 23:34:23 +00:00
|
|
|
.run_crusher_ci: &run_crusher_ci
|
2022-10-25 19:39:23 +00:00
|
|
|
rules:
|
|
|
|
- if: '$CI_PROJECT_PATH == "ci/csc331_crusher/dev/vtk-m"'
|
|
|
|
when: on_success
|
|
|
|
- when: never
|
|
|
|
|
2020-03-11 18:16:04 +00:00
|
|
|
# General Longer Term Tasks:
|
2020-05-29 20:00:17 +00:00
|
|
|
# - Setup clang tidy as sub-pipeline
|
2020-05-26 17:19:31 +00:00
|
|
|
# - 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
|
|
|
|
|
2021-07-27 23:15:27 +00:00
|
|
|
.use_minimum_supported_cmake:
|
|
|
|
variables:
|
|
|
|
CMAKE_VERSION: "3.13.5"
|
|
|
|
|
2023-04-26 22:48:13 +00:00
|
|
|
.warning_policy:
|
|
|
|
allow_failure:
|
|
|
|
exit_codes: [ 47 ]
|
|
|
|
|
2021-07-27 23:15:27 +00:00
|
|
|
.install_cmake: &install_cmake |
|
|
|
|
export PATH=$PWD/.gitlab/cmake/bin:$PATH
|
|
|
|
.gitlab/ci/config/cmake.sh "$CMAKE_VERSION"
|
|
|
|
cmake --version
|
|
|
|
|
2020-03-11 18:16:04 +00:00
|
|
|
.cmake_build_linux: &cmake_build_linux
|
|
|
|
stage: build
|
|
|
|
timeout: 2 hours
|
|
|
|
interruptible: true
|
|
|
|
before_script:
|
2021-07-27 23:15:27 +00:00
|
|
|
- *install_cmake
|
2022-07-13 19:45:59 +00:00
|
|
|
- "cmake -VV -P .gitlab/ci/config/ninja.cmake"
|
2020-03-11 18:16:04 +00:00
|
|
|
- export PATH=$PWD/.gitlab:$PATH
|
2022-07-13 19:45:59 +00:00
|
|
|
- .gitlab/ci/config/sccache.sh
|
2020-04-08 16:02:43 +00:00
|
|
|
- SCCACHE_IDLE_TIMEOUT=0 sccache --start-server
|
2020-03-11 18:16:04 +00:00
|
|
|
- sccache --show-stats
|
2021-02-21 15:53:22 +00:00
|
|
|
- .gitlab/ci/config/google_benchmarks.sh
|
2020-03-11 18:16:04 +00:00
|
|
|
- "cmake --version"
|
2021-04-24 00:25:18 +00:00
|
|
|
- "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"
|
2020-04-02 19:09:47 +00:00
|
|
|
script:
|
2020-03-11 18:16:04 +00:00
|
|
|
- "ctest -VV -S .gitlab/ci/ctest_build.cmake"
|
|
|
|
- sccache --show-stats
|
2023-04-26 22:48:13 +00:00
|
|
|
- cmake -P .gitlab/ci/check_warnings.cmake || exit 47
|
2021-12-14 21:42:25 +00:00
|
|
|
extends:
|
|
|
|
- .cmake_build_artifacts
|
2023-04-26 22:48:13 +00:00
|
|
|
- .warning_policy
|
2021-12-14 21:42:25 +00:00
|
|
|
|
|
|
|
.cmake_test_linux: &cmake_test_linux
|
|
|
|
stage: test
|
|
|
|
timeout: 50 minutes
|
|
|
|
interruptible: true
|
|
|
|
before_script:
|
|
|
|
- *install_cmake
|
2022-07-13 19:45:59 +00:00
|
|
|
- "cmake -VV -P .gitlab/ci/config/ninja.cmake"
|
|
|
|
- export PATH=$PWD/.gitlab:$PATH
|
2021-12-14 21:42:25 +00:00
|
|
|
script:
|
|
|
|
- "ctest $CTEST_TIMEOUT -VV -S .gitlab/ci/ctest_test.cmake"
|
|
|
|
extends:
|
|
|
|
- .cmake_test_artifacts
|
|
|
|
|
|
|
|
.cmake_memcheck_linux: &cmake_memcheck_linux
|
|
|
|
stage: test
|
|
|
|
timeout: 2 hours
|
|
|
|
interruptible: true
|
|
|
|
before_script:
|
|
|
|
- *install_cmake
|
|
|
|
script:
|
|
|
|
- "ctest -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
|
2022-06-16 17:39:24 +00:00
|
|
|
- build/junit.xml
|
2021-12-14 21:42:25 +00:00
|
|
|
reports:
|
2022-06-16 17:39:24 +00:00
|
|
|
junit: build/junit.xml
|
2021-12-14 21:42:25 +00:00
|
|
|
|
|
|
|
.cmake_build_artifacts: &cmake_build_artifacts
|
2020-03-11 18:16:04 +00:00
|
|
|
artifacts:
|
|
|
|
expire_in: 24 hours
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
# The artifacts of the build.
|
|
|
|
- build/bin/
|
|
|
|
- build/include/
|
2020-06-08 20:57:51 +00:00
|
|
|
- build/vtkm/thirdparty/diy/vtkmdiy/
|
2020-03-11 18:16:04 +00:00
|
|
|
- build/lib/
|
2021-07-27 03:04:56 +00:00
|
|
|
- build/config/
|
2020-03-11 18:16:04 +00:00
|
|
|
|
|
|
|
# CTest and CMake install files.
|
|
|
|
# Note: this also captures our CIState.cmake file
|
|
|
|
- build/CMakeCache.txt
|
2023-04-26 22:48:13 +00:00
|
|
|
- build/compile_num_warnings.log
|
2022-05-19 03:15:15 +00:00
|
|
|
- build/**/*.cmake
|
2020-03-11 18:16:04 +00:00
|
|
|
- build/Testing/
|
|
|
|
|
|
|
|
# CDash files.
|
|
|
|
- build/DartConfiguration.tcl
|
|
|
|
|
2021-12-14 21:42:25 +00:00
|
|
|
.cmake_test_artifacts: &cmake_test_artifacts
|
2020-10-14 17:15:28 +00:00
|
|
|
artifacts:
|
|
|
|
expire_in: 24 hours
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
# The generated regression testing images
|
2022-05-19 03:15:15 +00:00
|
|
|
- build/**/*.png
|
|
|
|
- build/**/*.pnm
|
|
|
|
- build/**/*.pmm
|
2022-06-16 17:39:24 +00:00
|
|
|
- build/junit.xml
|
2021-08-12 23:35:39 +00:00
|
|
|
reports:
|
2022-06-16 17:39:24 +00:00
|
|
|
junit: build/junit.xml
|
2020-03-11 18:16:04 +00:00
|
|
|
|
2020-04-17 19:06:29 +00:00
|
|
|
|
2020-03-11 18:16:04 +00:00
|
|
|
include:
|
2022-07-11 18:06:29 +00:00
|
|
|
- local: '/.gitlab/ci/ascent.yml'
|
2023-03-13 23:34:23 +00:00
|
|
|
- local: '/.gitlab/ci/crusher.yml'
|
2020-03-11 18:16:04 +00:00
|
|
|
- local: '/.gitlab/ci/centos7.yml'
|
2020-04-17 19:06:29 +00:00
|
|
|
- local: '/.gitlab/ci/centos8.yml'
|
2020-05-29 20:00:17 +00:00
|
|
|
- local: '/.gitlab/ci/doxygen.yml'
|
2022-07-11 18:06:29 +00:00
|
|
|
- local: '/.gitlab/ci/macos.yml'
|
2023-06-19 18:27:45 +00:00
|
|
|
- local: '/.gitlab/ci/opensuse.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'
|
2020-04-21 20:22:22 +00:00
|
|
|
- local: '/.gitlab/ci/windows10.yml'
|