Skip to content

Commit

Permalink
ci: add spack ci job
Browse files Browse the repository at this point in the history
  • Loading branch information
vicentebolea committed Dec 4, 2024
1 parent 5ca7938 commit 305f468
Show file tree
Hide file tree
Showing 14 changed files with 206 additions and 194 deletions.
52 changes: 0 additions & 52 deletions .circleci/config.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/sync.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: OLCF sync script
name: Sync jobs

on:
schedule:
Expand Down
84 changes: 84 additions & 0 deletions .gitlab/gitlab-ci-spack.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# This file is used to define the GitLab CI/CD pipeline for the ADIOS2 project.
.common-sanitizer:
variables:
GITLAB_SITE: "UO CI (gitlab.spack.io)"
CI_BIN_DIR: "$CI_PROJECT_DIR/build"
tags:
- medium
- uo
- public
- x86_64
interruptible: true

.common-build:
extends:
- .common-sanitizer
stage: build
script:
- bash scripts/ci/gitlab-ci/run.sh update
- bash scripts/ci/gitlab-ci/run.sh configure
- bash scripts/ci/gitlab-ci/run.sh build
artifacts:
expire_in: 1 hours
when: always
paths:
- $CI_BIN_DIR/bin/
- $CI_BIN_DIR/lib/
- $CI_BIN_DIR/lib64/
- $CI_BIN_DIR/thirdparty/**/lib64/
- $CI_BIN_DIR/testing/
- $CI_BIN_DIR/source/**/*.h
- $CI_BIN_DIR/source/**/*.in

# CTest and CMake install files.
- $CI_BIN_DIR/CMakeCache.txt
- $CI_BIN_DIR/**/*.cmake
- $CI_BIN_DIR/Testing/

# CDash files.
- $CI_BIN_DIR/DartConfiguration.tcl

.common-test:
extends:
- .common-sanitizer
stage: test
script:
- bash scripts/ci/gitlab-ci/run.sh memcheck

#===============================================================================

build:uo-sanitizer-asan:
image: ornladios/adios2:ci-fedora-asan
extends: [.common-build]

build:uo-sanitizer-msan:
image: ornladios/adios2:ci-fedora-msan
extends: [.common-build]

build:uo-sanitizer-tsan:
image: ornladios/adios2:ci-fedora-tsan
extends: [.common-build]

build:uo-sanitizer-ubsan:
image: ornladios/adios2:ci-fedora-ubsan
extends: [.common-build]

test:uo-sanitizer-asan:
image: ornladios/adios2:ci-fedora-asan
extends: [.common-test]
needs: [build:uo-sanitizer-asan]

test:uo-sanitizer-msan:
image: ornladios/adios2:ci-fedora-msan
extends: [.common-test]
needs: [build:uo-sanitizer-msan]

test:uo-sanitizer-tsan:
image: ornladios/adios2:ci-fedora-tsan
extends: [.common-test]
needs: [build:uo-sanitizer-tsan]

test:uo-sanitizer-ubsan:
image: ornladios/adios2:ci-fedora-ubsan
extends: [.common-test]
needs: [build:uo-sanitizer-ubsan]
25 changes: 0 additions & 25 deletions scripts/ci/circle/findStatus.py

This file was deleted.

29 changes: 0 additions & 29 deletions scripts/ci/circle/postCDashStatus.sh

This file was deleted.

81 changes: 0 additions & 81 deletions scripts/ci/circle/run.sh

This file was deleted.

1 change: 1 addition & 0 deletions scripts/ci/cmake/adios-asan.supp
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ leak:ps_make_timer_name_
leak:ibv_get_device_list
leak:add_transport_to_cm
leak:INT_CMadd_delayed_task
leak:__vasprintf_internal
4 changes: 2 additions & 2 deletions scripts/ci/cmake/ci-fedora-asan.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ ADIOS2_USE_ZFP:STRING=ON
")

set(dashboard_track "Analysis")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
set(CTEST_BUILD_FLAGS "-k -j4")
set(CTEST_CMAKE_GENERATOR "Ninja")
set(CTEST_BUILD_FLAGS "-k0 -j")
set(CTEST_MEMORYCHECK_TYPE "AddressSanitizer")

set(ADIOS_TEST_REPEAT 0)
Expand Down
4 changes: 2 additions & 2 deletions scripts/ci/cmake/ci-fedora-tsan.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ HDF5_DIFF_EXECUTABLE:FILEPATH=/opt/tsan/bin/h5diff
")

set(dashboard_track "Analysis")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
set(CTEST_BUILD_FLAGS "-k -j4")
set(CTEST_CMAKE_GENERATOR "Ninja")
set(CTEST_BUILD_FLAGS "-k0 -j")
set(CTEST_MEMORYCHECK_TYPE "ThreadSanitizer")

set(ADIOS_TEST_REPEAT 0)
Expand Down
4 changes: 2 additions & 2 deletions scripts/ci/cmake/ci-fedora-ubsan.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ HDF5_DIFF_EXECUTABLE:FILEPATH=/usr/bin/h5diff
")

set(dashboard_track "Analysis")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
set(CTEST_BUILD_FLAGS "-k -j2")
set(CTEST_CMAKE_GENERATOR "Ninja")
set(CTEST_BUILD_FLAGS "-k0 -j")
set(CTEST_MEMORYCHECK_TYPE "UndefinedBehaviorSanitizer")

set(ADIOS_TEST_REPEAT 0)
Expand Down
29 changes: 29 additions & 0 deletions scripts/ci/cmake/ci-uo-sanitizer-asan.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Client maintainer: [email protected]

set(ENV{CC} clang)
set(ENV{CXX} clang++)
set(ASAN_FLAGS "-fsanitize=address -fno-omit-frame-pointer -pthread -mllvm -asan-use-private-alias=1 -Wno-unused-command-line-argument")
set(ENV{ASAN_OPTIONS} "use_odr_indicator=1")
set(ENV{LSAN_OPTIONS} "suppressions=$ENV{CI_SOURCE_DIR}/scripts/ci/cmake/adios-asan.supp")
set(ENV{CFLAGS} "${ASAN_FLAGS}")
set(ENV{CXXFLAGS} "${ASAN_FLAGS}")

set(dashboard_cache "
BUILD_TESTING:BOOL=ON
ADIOS2_BUILD_EXAMPLES:BOOL=ON
ADIOS2_USE_Fortran:STRING=OFF
ADIOS2_USE_HDF5:STRING=ON
ADIOS2_USE_MPI:STRING=OFF
ADIOS2_USE_Python:STRING=OFF
ADIOS2_USE_ZFP:STRING=ON
")

set(dashboard_track "Analysis")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
set(CTEST_BUILD_FLAGS "-k -j4")
set(CTEST_MEMORYCHECK_TYPE "AddressSanitizer")

set(ADIOS_TEST_REPEAT 0)
list(APPEND CTEST_UPDATE_NOTES_FILES "${CMAKE_CURRENT_LIST_FILE}")
include(${CMAKE_CURRENT_LIST_DIR}/ci-common.cmake)
31 changes: 31 additions & 0 deletions scripts/ci/cmake/ci-uo-sanitizer-msan.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Client maintainer: [email protected]

set(dashboard_cache "
BUILD_TESTING:BOOL=ON
ADIOS2_BUILD_EXAMPLES:BOOL=ON
CMAKE_TOOLCHAIN_FILE:FILEPATH=/opt/msan/toolchain.cmake
ADIOS2_USE_Fortran:STRING=OFF
ADIOS2_USE_HDF5:STRING=ON
ADIOS2_USE_MPI:STRING=OFF
ADIOS2_USE_Python:STRING=OFF
HDF5_C_COMPILER_EXECUTABLE:FILEPATH=/opt/msan/bin/h5cc
HDF5_DIFF_EXECUTABLE:FILEPATH=/opt/msan/bin/h5diff
")

set(dashboard_track "Analysis")
set(CTEST_CMAKE_GENERATOR "Ninja")
set(CTEST_BUILD_FLAGS "-k0 -j")
set(CTEST_MEMORYCHECK_TYPE "MemorySanitizer")

list(APPEND EXCLUDE_EXPRESSIONS
"Engine.BP.BPBufferSizeTest.SyncDeferredIdenticalUsage.BP3.Serial"
"Engine.BP.BPBufferSizeTest.SyncDeferredIdenticalUsage.BP4.Serial"
)
list(JOIN EXCLUDE_EXPRESSIONS "|" TEST_EXCLUDE_STRING)
set(CTEST_MEMCHECK_ARGS EXCLUDE "${TEST_EXCLUDE_STRING}")

set(ADIOS_TEST_REPEAT 0)
list(APPEND CTEST_UPDATE_NOTES_FILES "${CMAKE_CURRENT_LIST_FILE}")
include(${CMAKE_CURRENT_LIST_DIR}/ci-common.cmake)
Loading

0 comments on commit 305f468

Please sign in to comment.