From 32d36b5522d0ef385196a05bc68860b984dc78e4 Mon Sep 17 00:00:00 2001 From: aurianer Date: Thu, 8 Feb 2024 16:03:40 +0100 Subject: [PATCH 1/6] Add a build pipeline for santis --- .gitlab/includes/gcc13_santis_pipeline.yml | 41 ++++++++++++++++++++++ .gitlab/pipelines_on_push.yml | 1 + 2 files changed, 42 insertions(+) create mode 100644 .gitlab/includes/gcc13_santis_pipeline.yml diff --git a/.gitlab/includes/gcc13_santis_pipeline.yml b/.gitlab/includes/gcc13_santis_pipeline.yml new file mode 100644 index 000000000..2eacddac2 --- /dev/null +++ b/.gitlab/includes/gcc13_santis_pipeline.yml @@ -0,0 +1,41 @@ +# Copyright (c) 2023 ETH Zurich +# +# SPDX-License-Identifier: BSL-1.0 +# Distributed under the Boost Software License, Version 1.0. (See accompanying +# file BOOST_LICENSE_1_0.rst or copy at http://www.boost.org/LICENSE_1_0.txt) + +include: + - local: '.gitlab/includes/common_pipeline.yml' + - local: '.gitlab/includes/common_spack_pipeline.yml' + +.variables_gcc13_santis_config: + variables: + SPACK_ARCH: linux-ubuntu22.04-neoverse_v2 + COMPILER: gcc@13.1.0 + CXXSTD: 20 + SPACK_SPEC: "pika@main arch=$SPACK_ARCH %${COMPILER} malloc=system cxxstd=$CXXSTD +stdexec \ + ^boost@1.82.0 ^hwloc@2.9.1 \ + ^stdexec@git.nvhpc-23.09.rc4=main" + CMAKE_FLAGS: "-DPIKA_WITH_CXX_STANDARD=$CXXSTD -DPIKA_WITH_MALLOC=system \ + -DPIKA_WITH_STDEXEC=ON -DPIKA_WITH_SPINLOCK_DEADLOCK_DETECTION=ON" + +gcc13_santis_spack_compiler_image: + extends: + - .variables_gcc13_santis_config + - .compiler_image_template + - .container-builder-cscs-gh200 + +gcc13_santis_spack_image: + needs: [gcc13_santis_spack_compiler_image] + extends: + - .variables_gcc13_santis_config + - .dependencies_image_template + - .container-builder-cscs-gh200 + +gcc13_santis_build: + needs: [gcc13_santis_spack_image] + extends: + - .variables_gcc13_santis_config + - .build_template + - .container-builder-cscs-gh200 + allow_failure: true diff --git a/.gitlab/pipelines_on_push.yml b/.gitlab/pipelines_on_push.yml index 408f31b02..035d0da1a 100644 --- a/.gitlab/pipelines_on_push.yml +++ b/.gitlab/pipelines_on_push.yml @@ -6,6 +6,7 @@ include: - local: '.gitlab/includes/gcc13_pipeline.yml' + - local: '.gitlab/includes/gcc13_santis_pipeline.yml' - local: '.gitlab/includes/clang14_cuda11_pipeline.yml' - local: '.gitlab/includes/performance_gcc13_pipeline.yml' - local: '.gitlab/includes/gcc12_hip5_pipeline.yml' From abf0521955de5e554ef90e6922be89edd51c4474 Mon Sep 17 00:00:00 2001 From: aurianer Date: Fri, 16 Feb 2024 22:26:58 +0100 Subject: [PATCH 2/6] Use make multiarch image to build both arch in one image --- .gitlab/includes/clang11_pipeline.yml | 6 +-- .gitlab/includes/clang12_pipeline.yml | 6 +-- .gitlab/includes/clang13_pipeline.yml | 6 +-- .gitlab/includes/clang14_cuda11_pipeline.yml | 6 +-- .gitlab/includes/clang15_pipeline.yml | 6 +-- .gitlab/includes/clang16_pipeline.yml | 6 +-- .gitlab/includes/clang17_pipeline.yml | 6 +-- .gitlab/includes/common_spack_pipeline.yml | 53 +++++++++++++++---- .gitlab/includes/gcc10_apex_pipeline.yml | 6 +-- .gitlab/includes/gcc11_pipeline.yml | 6 +-- .gitlab/includes/gcc12_cuda12_pipeline.yml | 6 +-- .gitlab/includes/gcc12_hip5_pipeline.yml | 6 +-- .gitlab/includes/gcc12_pipeline.yml | 6 +-- .gitlab/includes/gcc13_pipeline.yml | 6 +-- .gitlab/includes/gcc13_santis_pipeline.yml | 9 ++-- .gitlab/includes/gcc9_cuda11_pipeline.yml | 6 +-- .gitlab/includes/gcc9_pipeline.yml | 6 +-- .gitlab/includes/nvhpc23_9_pipeline.yml | 6 +-- .../includes/performance_gcc13_pipeline.yml | 6 +-- 19 files changed, 97 insertions(+), 67 deletions(-) diff --git a/.gitlab/includes/clang11_pipeline.yml b/.gitlab/includes/clang11_pipeline.yml index 31c737fbe..264367eb5 100644 --- a/.gitlab/includes/clang11_pipeline.yml +++ b/.gitlab/includes/clang11_pipeline.yml @@ -21,19 +21,19 @@ include: clang11_spack_compiler_image: extends: - .variables_clang11_config - - .compiler_image_template + - .compiler_image_template_rosa clang11_spack_image: needs: [clang11_spack_compiler_image] extends: - .variables_clang11_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang11_build: needs: [clang11_spack_image] extends: - .variables_clang11_config - - .build_template + - .build_template_rosa .clang11_test_commmon: needs: [clang11_build] diff --git a/.gitlab/includes/clang12_pipeline.yml b/.gitlab/includes/clang12_pipeline.yml index 138478ae4..9fd48b989 100644 --- a/.gitlab/includes/clang12_pipeline.yml +++ b/.gitlab/includes/clang12_pipeline.yml @@ -25,19 +25,19 @@ include: clang12_spack_compiler_image: extends: - .variables_clang12_config - - .compiler_image_template + - .compiler_image_template_rosa clang12_spack_image: needs: [clang12_spack_compiler_image] extends: - .variables_clang12_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang12_build: needs: [clang12_spack_image] extends: - .variables_clang12_config - - .build_template + - .build_template_rosa .clang12_test_commmon: needs: [clang12_build] diff --git a/.gitlab/includes/clang13_pipeline.yml b/.gitlab/includes/clang13_pipeline.yml index ac194690e..fae9dfee0 100644 --- a/.gitlab/includes/clang13_pipeline.yml +++ b/.gitlab/includes/clang13_pipeline.yml @@ -23,19 +23,19 @@ include: clang13_spack_compiler_image: extends: - .variables_clang13_config - - .compiler_image_template + - .compiler_image_template_rosa clang13_spack_image: needs: [clang13_spack_compiler_image] extends: - .variables_clang13_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang13_build: needs: [clang13_spack_image] extends: - .variables_clang13_config - - .build_template + - .build_template_rosa .clang13_test_commmon: needs: [clang13_build] diff --git a/.gitlab/includes/clang14_cuda11_pipeline.yml b/.gitlab/includes/clang14_cuda11_pipeline.yml index 8d01d2720..9dcde233c 100644 --- a/.gitlab/includes/clang14_cuda11_pipeline.yml +++ b/.gitlab/includes/clang14_cuda11_pipeline.yml @@ -23,19 +23,19 @@ include: clang14_cuda11_spack_compiler_image: extends: - .variables_clang14_cuda11_config - - .compiler_image_template + - .compiler_image_template_rosa clang14_cuda11_spack_image: needs: [clang14_cuda11_spack_compiler_image] extends: - .variables_clang14_cuda11_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang14_cuda11_build: needs: [clang14_cuda11_spack_image] extends: - .variables_clang14_cuda11_config - - .build_template + - .build_template_rosa .clang14_cuda11_test_commmon: needs: [clang14_cuda11_build] diff --git a/.gitlab/includes/clang15_pipeline.yml b/.gitlab/includes/clang15_pipeline.yml index 09f7143bb..9adfe94c3 100644 --- a/.gitlab/includes/clang15_pipeline.yml +++ b/.gitlab/includes/clang15_pipeline.yml @@ -22,19 +22,19 @@ include: clang15_spack_compiler_image: extends: - .variables_clang15_config - - .compiler_image_template + - .compiler_image_template_rosa clang15_spack_image: needs: [clang15_spack_compiler_image] extends: - .variables_clang15_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang15_build: needs: [clang15_spack_image] extends: - .variables_clang15_config - - .build_template + - .build_template_rosa .clang15_test_commmon: needs: [clang15_build] diff --git a/.gitlab/includes/clang16_pipeline.yml b/.gitlab/includes/clang16_pipeline.yml index 2d168dd83..0afc19507 100644 --- a/.gitlab/includes/clang16_pipeline.yml +++ b/.gitlab/includes/clang16_pipeline.yml @@ -21,19 +21,19 @@ include: clang16_spack_compiler_image: extends: - .variables_clang16_config - - .compiler_image_template + - .compiler_image_template_rosa clang16_spack_image: needs: [clang16_spack_compiler_image] extends: - .variables_clang16_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang16_build: needs: [clang16_spack_image] extends: - .variables_clang16_config - - .build_template + - .build_template_rosa .clang16_test_commmon: needs: [clang16_build] diff --git a/.gitlab/includes/clang17_pipeline.yml b/.gitlab/includes/clang17_pipeline.yml index 970217439..bec42ccf4 100644 --- a/.gitlab/includes/clang17_pipeline.yml +++ b/.gitlab/includes/clang17_pipeline.yml @@ -21,19 +21,19 @@ include: clang17_spack_compiler_image: extends: - .variables_clang17_config - - .compiler_image_template + - .compiler_image_template_rosa clang17_spack_image: needs: [clang17_spack_compiler_image] extends: - .variables_clang17_config - - .dependencies_image_template + - .dependencies_image_template_rosa clang17_build: needs: [clang17_spack_image] extends: - .variables_clang17_config - - .build_template + - .build_template_rosa .clang17_test_commmon: needs: [clang17_build] diff --git a/.gitlab/includes/common_spack_pipeline.yml b/.gitlab/includes/common_spack_pipeline.yml index 9468802bf..8c2ca97f5 100644 --- a/.gitlab/includes/common_spack_pipeline.yml +++ b/.gitlab/includes/common_spack_pipeline.yml @@ -10,15 +10,16 @@ include: variables: SPACK_COMMIT: 6cfcbc01679ebabe640f4462c8fc07626a543015 -base_spack_image: +.base_spack_image: stage: spack_base timeout: 2 hours - extends: .container-builder before_script: - export DOCKERFILE_SHA=`sha256sum $DOCKERFILE | head -c 16` - export CONFIG_TAG=`echo $DOCKERFILE_SHA-$BASE_IMAGE-$SPACK_COMMIT | sha256sum - | head -c 16` - - export PERSIST_IMAGE_NAME=$CSCS_REGISTRY_PATH/pika-spack-base:$CONFIG_TAG - - echo -e "BASE_IMAGE=$PERSIST_IMAGE_NAME" >> base.env + - export PERSIST_IMAGE_NAME=$CSCS_REGISTRY_PATH/$ARCH/pika-spack-base:$CONFIG_TAG + - arch_upper=`echo $ARCH | tr '[:lower:]' '[:upper:]'` + - echo -e "CONFIG_TAG=$CONFIG_TAG" >> base.env + - echo -e "BASE_IMAGE_$arch_upper=$PERSIST_IMAGE_NAME" >> base.env variables: BASE_IMAGE: docker.io/ubuntu:22.04 DOCKERFILE: .gitlab/docker/Dockerfile.spack_base @@ -27,11 +28,28 @@ base_spack_image: reports: dotenv: base.env +base_spack_image_aarch64: + extends: [.container-builder-cscs-gh200, .base_spack_image] +base_spack_image_x86_64: + extends: [.container-builder-cscs-zen2, .base_spack_image] + +make_multiarch_image: + stage: spack_base + needs: [base_spack_image_aarch64, base_spack_image_x86_64] + extends: .make-multiarch-image + after_script: + - echo -e "BASE_IMAGE=$PERSIST_IMAGE_NAME" >> multiarch.env + variables: + PERSIST_IMAGE_NAME: $CSCS_REGISTRY_PATH/pika-spack-base:${CONFIG_TAG} + PERSIST_IMAGE_NAME_AARCH64: $BASE_IMAGE_AARCH64 + PERSIST_IMAGE_NAME_X86_64: $BASE_IMAGE_X86_64 + artifacts: + reports: + dotenv: multiarch.env + .compiler_image_template: stage: spack_compiler - needs: [base_spack_image] - extends: - - .container-builder + needs: [make_multiarch_image] before_script: - export DOCKERFILE_SHA=`sha256sum $DOCKERFILE | head -c 16` - compiler=${COMPILER}${NVHPC_COMPILER:+-}${NVHPC_COMPILER} @@ -47,10 +65,14 @@ base_spack_image: reports: dotenv: compiler.env +.compiler_image_template_santis: + extends: [.container-builder-cscs-gh200, .compiler_image_template] + +.compiler_image_template_rosa: + extends: [.container-builder-cscs-zen2, .compiler_image_template] + .dependencies_image_template: stage: spack_dependencies - extends: - - .container-builder before_script: - export DOCKERFILE_SHA=`sha256sum $DOCKERFILE | head -c 16` - CONFIG_TAG=`echo $DOCKERFILE_SHA-$BASE_IMAGE-$SPACK_SPEC | sha256sum - | head -c 16` @@ -64,6 +86,12 @@ base_spack_image: reports: dotenv: dependencies.env +.dependencies_image_template_santis: + extends: [.container-builder-cscs-gh200, .dependencies_image_template] + +.dependencies_image_template_rosa: + extends: [.container-builder-cscs-zen2, .dependencies_image_template] + .parallel_build_types: parallel: matrix: @@ -76,7 +104,6 @@ base_spack_image: .build_template: stage: build extends: - - .container-builder - .build_variables_common - .cmake_variables_common - .parallel_build_types @@ -93,6 +120,12 @@ base_spack_image: reports: dotenv: "$DOTENV_FILE" +.build_template_santis: + extends: [.container-builder-cscs-gh200, .build_template] + +.build_template_rosa: + extends: [.container-builder-cscs-zen2, .build_template] + .test_template: extends: - .cmake_variables_common diff --git a/.gitlab/includes/gcc10_apex_pipeline.yml b/.gitlab/includes/gcc10_apex_pipeline.yml index 77b0b2e93..5ea7deab9 100644 --- a/.gitlab/includes/gcc10_apex_pipeline.yml +++ b/.gitlab/includes/gcc10_apex_pipeline.yml @@ -21,19 +21,19 @@ include: gcc10_apex_spack_compiler_image: extends: - .variables_gcc10_apex_config - - .compiler_image_template + - .compiler_image_template_rosa gcc10_apex_spack_image: needs: [gcc10_apex_spack_compiler_image] extends: - .variables_gcc10_apex_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc10_apex_build: needs: [gcc10_apex_spack_image] extends: - .variables_gcc10_apex_config - - .build_template + - .build_template_rosa .gcc10_apex_test_commmon: needs: [gcc10_apex_build] diff --git a/.gitlab/includes/gcc11_pipeline.yml b/.gitlab/includes/gcc11_pipeline.yml index e1d848b25..ce71288b6 100644 --- a/.gitlab/includes/gcc11_pipeline.yml +++ b/.gitlab/includes/gcc11_pipeline.yml @@ -21,18 +21,18 @@ include: gcc11_spack_compiler_image: extends: - .variables_gcc11_config - - .compiler_image_template + - .compiler_image_template_rosa gcc11_spack_image: needs: [gcc11_spack_compiler_image] extends: - .variables_gcc11_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc11_build: needs: [gcc11_spack_image] extends: - - .build_template + - .build_template_rosa - .variables_gcc11_config .gcc11_test_commmon: diff --git a/.gitlab/includes/gcc12_cuda12_pipeline.yml b/.gitlab/includes/gcc12_cuda12_pipeline.yml index 5b28ab723..13a33bff0 100644 --- a/.gitlab/includes/gcc12_cuda12_pipeline.yml +++ b/.gitlab/includes/gcc12_cuda12_pipeline.yml @@ -24,13 +24,13 @@ include: gcc12_cuda12_spack_compiler_image: extends: - .variables_gcc12_cuda12_config - - .compiler_image_template + - .compiler_image_template_rosa gcc12_cuda12_spack_image: needs: [gcc12_cuda12_spack_compiler_image] extends: - .variables_gcc12_cuda12_config - - .dependencies_image_template + - .dependencies_image_template_rosa # Test step currently commented as the cuda driver is too old on clariden: # https://github.com/pika-org/pika/issues/884 @@ -38,7 +38,7 @@ gcc12_cuda12_spack_image: # needs: [gcc12_cuda12_spack_image] # extends: # - .variables_gcc12_cuda12_config -# - .build_template +# - .build_template_rosa # #.gcc12_cuda12_test_commmon: # needs: [gcc12_cuda12_build] diff --git a/.gitlab/includes/gcc12_hip5_pipeline.yml b/.gitlab/includes/gcc12_hip5_pipeline.yml index d10542e58..e64f400fc 100644 --- a/.gitlab/includes/gcc12_hip5_pipeline.yml +++ b/.gitlab/includes/gcc12_hip5_pipeline.yml @@ -23,20 +23,20 @@ include: gcc12_hip5_spack_compiler_image: extends: - .variables_gcc12_hip5_config - - .compiler_image_template + - .compiler_image_template_rosa gcc12_hip5_spack_image: timeout: 4 hours needs: [gcc12_hip5_spack_compiler_image] extends: - .variables_gcc12_hip5_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc12_hip5_build: needs: [gcc12_hip5_spack_image] extends: - .variables_gcc12_hip5_config - - .build_template + - .build_template_rosa .gcc12_hip5_test_commmon: needs: [gcc12_hip5_build] diff --git a/.gitlab/includes/gcc12_pipeline.yml b/.gitlab/includes/gcc12_pipeline.yml index 7edfaccdc..dd759e258 100644 --- a/.gitlab/includes/gcc12_pipeline.yml +++ b/.gitlab/includes/gcc12_pipeline.yml @@ -21,19 +21,19 @@ include: gcc12_spack_compiler_image: extends: - .variables_gcc12_config - - .compiler_image_template + - .compiler_image_template_rosa gcc12_spack_image: needs: [gcc12_spack_compiler_image] extends: - .variables_gcc12_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc12_build: needs: [gcc12_spack_image] extends: - .variables_gcc12_config - - .build_template + - .build_template_rosa .gcc12_test_commmon: needs: [gcc12_build] diff --git a/.gitlab/includes/gcc13_pipeline.yml b/.gitlab/includes/gcc13_pipeline.yml index fc5f1732c..a341043f4 100644 --- a/.gitlab/includes/gcc13_pipeline.yml +++ b/.gitlab/includes/gcc13_pipeline.yml @@ -22,19 +22,19 @@ include: gcc13_spack_compiler_image: extends: - .variables_gcc13_config - - .compiler_image_template + - .compiler_image_template_rosa gcc13_spack_image: needs: [gcc13_spack_compiler_image] extends: - .variables_gcc13_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc13_build: needs: [gcc13_spack_image] extends: - .variables_gcc13_config - - .build_template + - .build_template_rosa .gcc13_test_commmon: needs: [gcc13_build] diff --git a/.gitlab/includes/gcc13_santis_pipeline.yml b/.gitlab/includes/gcc13_santis_pipeline.yml index 2eacddac2..9f7d0d335 100644 --- a/.gitlab/includes/gcc13_santis_pipeline.yml +++ b/.gitlab/includes/gcc13_santis_pipeline.yml @@ -22,20 +22,17 @@ include: gcc13_santis_spack_compiler_image: extends: - .variables_gcc13_santis_config - - .compiler_image_template - - .container-builder-cscs-gh200 + - .compiler_image_template_santis gcc13_santis_spack_image: needs: [gcc13_santis_spack_compiler_image] extends: - .variables_gcc13_santis_config - - .dependencies_image_template - - .container-builder-cscs-gh200 + - .dependencies_image_template_santis gcc13_santis_build: needs: [gcc13_santis_spack_image] extends: - .variables_gcc13_santis_config - - .build_template - - .container-builder-cscs-gh200 + - .build_template_santis allow_failure: true diff --git a/.gitlab/includes/gcc9_cuda11_pipeline.yml b/.gitlab/includes/gcc9_cuda11_pipeline.yml index 8b88f3cc2..bcc02dc44 100644 --- a/.gitlab/includes/gcc9_cuda11_pipeline.yml +++ b/.gitlab/includes/gcc9_cuda11_pipeline.yml @@ -21,19 +21,19 @@ include: gcc9_cuda11_spack_compiler_image: extends: - .variables_gcc9_cuda11_config - - .compiler_image_template + - .compiler_image_template_rosa gcc9_cuda11_spack_image: needs: [gcc9_cuda11_spack_compiler_image] extends: - .variables_gcc9_cuda11_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc9_cuda11_build: needs: [gcc9_cuda11_spack_image] extends: - .variables_gcc9_cuda11_config - - .build_template + - .build_template_rosa .gcc9_cuda11_test_commmon: needs: [gcc9_cuda11_build] diff --git a/.gitlab/includes/gcc9_pipeline.yml b/.gitlab/includes/gcc9_pipeline.yml index 8ee987c3b..18754dd49 100644 --- a/.gitlab/includes/gcc9_pipeline.yml +++ b/.gitlab/includes/gcc9_pipeline.yml @@ -22,19 +22,19 @@ include: gcc9_spack_compiler_image: extends: - .variables_gcc9_config - - .compiler_image_template + - .compiler_image_template_rosa gcc9_spack_image: needs: [gcc9_spack_compiler_image] extends: - .variables_gcc9_config - - .dependencies_image_template + - .dependencies_image_template_rosa gcc9_build: needs: [gcc9_spack_image] extends: - .variables_gcc9_config - - .build_template + - .build_template_rosa .gcc9_test_commmon: needs: [gcc9_build] diff --git a/.gitlab/includes/nvhpc23_9_pipeline.yml b/.gitlab/includes/nvhpc23_9_pipeline.yml index 33d1508fe..2168e0260 100644 --- a/.gitlab/includes/nvhpc23_9_pipeline.yml +++ b/.gitlab/includes/nvhpc23_9_pipeline.yml @@ -25,19 +25,19 @@ include: nvhpc23_9_spack_compiler_image: extends: - .variables_nvhpc23_9_config - - .compiler_image_template + - .compiler_image_template_rosa nvhpc23_9_spack_image: needs: [nvhpc23_9_spack_compiler_image] extends: - .variables_nvhpc23_9_config - - .dependencies_image_template + - .dependencies_image_template_rosa nvhpc23_9_build: needs: [nvhpc23_9_spack_image] extends: - .variables_nvhpc23_9_config - - .build_template + - .build_template_rosa .nvhpc23_9_test_commmon: needs: [nvhpc23_9_build] diff --git a/.gitlab/includes/performance_gcc13_pipeline.yml b/.gitlab/includes/performance_gcc13_pipeline.yml index 115f5dff5..2c7a75eb4 100644 --- a/.gitlab/includes/performance_gcc13_pipeline.yml +++ b/.gitlab/includes/performance_gcc13_pipeline.yml @@ -21,19 +21,19 @@ include: performance_gcc13_spack_compiler_image: extends: - .variables_performance_gcc13_config - - .compiler_image_template + - .compiler_image_template_rosa performance_gcc13_spack_image: needs: [performance_gcc13_spack_compiler_image] extends: - .variables_performance_gcc13_config - - .dependencies_image_template + - .dependencies_image_template_rosa performance_gcc13_release_build: needs: [performance_gcc13_spack_image] extends: - .variables_performance_gcc13_config - - .build_template + - .build_template_rosa .performance_gcc13_test_common: extends: From c87d1daee847d0c341b3157c918d39560376b205 Mon Sep 17 00:00:00 2001 From: aurianer Date: Mon, 26 Feb 2024 19:19:15 +0100 Subject: [PATCH 3/6] Add curl as the fetch method in spack --- .gitlab/docker/Dockerfile.spack_compiler | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitlab/docker/Dockerfile.spack_compiler b/.gitlab/docker/Dockerfile.spack_compiler index 6322c4a3a..502590e00 100644 --- a/.gitlab/docker/Dockerfile.spack_compiler +++ b/.gitlab/docker/Dockerfile.spack_compiler @@ -6,8 +6,10 @@ SHELL ["/bin/bash", "-c"] # Disable host compatibility to be able to compile for other architectures than the one from the # CSCS CI's .container-builder # Allow installing deprecated packages (needed for apex) +# Use curl as the fetch method to try to avoid fetch errors on santis RUN spack config --scope site add concretizer:targets:host_compatible:false && \ - spack config --scope site add config:deprecated:true + spack config --scope site add config:deprecated:true && \ + spack config --scope site add config:url_fetch_method:curl # Install compiler if not already installed, modify packages.yaml to require spack compilers ARG SPACK_ARCH From 9ea25a2e0cd482fb3d62e36a1be963aba5756105 Mon Sep 17 00:00:00 2001 From: aurianer Date: Tue, 27 Feb 2024 10:05:39 +0100 Subject: [PATCH 4/6] Add ARCH to the config tag of the build job to avoid overriding an existing image --- .gitlab/includes/common_spack_pipeline.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab/includes/common_spack_pipeline.yml b/.gitlab/includes/common_spack_pipeline.yml index 8c2ca97f5..498bbbc28 100644 --- a/.gitlab/includes/common_spack_pipeline.yml +++ b/.gitlab/includes/common_spack_pipeline.yml @@ -111,7 +111,7 @@ make_multiarch_image: - export DOCKERFILE_SHA=`sha256sum $DOCKERFILE | head -c 16` - build_type=`echo $BUILD_TYPE | tr '[:upper:]' '[:lower:]'` - build_type_upper=`echo $BUILD_TYPE | tr '[:lower:]' '[:upper:]'` - - configuration=$DOCKERFILE_SHA-$BASE_IMAGE-$BUILD_DIR-$CMAKE_COMMON_FLAGS-$CMAKE_FLAGS-$CI_COMMIT_SHORT_SHA-$SOURCE_DIR + - configuration=$DOCKERFILE_SHA-$BASE_IMAGE-$BUILD_DIR-$CMAKE_COMMON_FLAGS-$CMAKE_FLAGS-$CI_COMMIT_SHORT_SHA-$SOURCE_DIR-$ARCH - configuration=${configuration//-D/} - CONFIG_TAG=`echo $configuration | sha256sum - | head -c 16` - export PERSIST_IMAGE_NAME=$CSCS_REGISTRY_PATH/pika-$compiler-$build_type-build:$CONFIG_TAG From 0273e8e9a07786837ecb580f079f058f51660269 Mon Sep 17 00:00:00 2001 From: aurianer Date: Wed, 28 Feb 2024 10:34:59 +0100 Subject: [PATCH 5/6] Move santis configuration to pipeline on merge --- .gitlab/pipelines_on_merge.yml | 1 + .gitlab/pipelines_on_push.yml | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab/pipelines_on_merge.yml b/.gitlab/pipelines_on_merge.yml index fef96ef47..ea303713e 100644 --- a/.gitlab/pipelines_on_merge.yml +++ b/.gitlab/pipelines_on_merge.yml @@ -13,6 +13,7 @@ include: - local: '.gitlab/includes/gcc11_pipeline.yml' - local: '.gitlab/includes/gcc12_pipeline.yml' - local: '.gitlab/includes/gcc12_cuda12_pipeline.yml' + - local: '.gitlab/includes/gcc13_santis_pipeline.yml' - local: '.gitlab/includes/clang11_pipeline.yml' - local: '.gitlab/includes/clang12_pipeline.yml' - local: '.gitlab/includes/clang13_pipeline.yml' diff --git a/.gitlab/pipelines_on_push.yml b/.gitlab/pipelines_on_push.yml index 035d0da1a..408f31b02 100644 --- a/.gitlab/pipelines_on_push.yml +++ b/.gitlab/pipelines_on_push.yml @@ -6,7 +6,6 @@ include: - local: '.gitlab/includes/gcc13_pipeline.yml' - - local: '.gitlab/includes/gcc13_santis_pipeline.yml' - local: '.gitlab/includes/clang14_cuda11_pipeline.yml' - local: '.gitlab/includes/performance_gcc13_pipeline.yml' - local: '.gitlab/includes/gcc12_hip5_pipeline.yml' From 436b7e02452f7fee39af0e1f201956bf6f4f5459 Mon Sep 17 00:00:00 2001 From: aurianer Date: Fri, 1 Mar 2024 11:14:40 +0100 Subject: [PATCH 6/6] Add allow_failure to all santis steps --- .gitlab/includes/common_spack_pipeline.yml | 7 ++++++- .gitlab/includes/gcc13_santis_pipeline.yml | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitlab/includes/common_spack_pipeline.yml b/.gitlab/includes/common_spack_pipeline.yml index 498bbbc28..d245f0b47 100644 --- a/.gitlab/includes/common_spack_pipeline.yml +++ b/.gitlab/includes/common_spack_pipeline.yml @@ -28,14 +28,19 @@ variables: reports: dotenv: base.env +# We allow failure since santis is unstable base_spack_image_aarch64: extends: [.container-builder-cscs-gh200, .base_spack_image] + allow_failure: true base_spack_image_x86_64: extends: [.container-builder-cscs-zen2, .base_spack_image] make_multiarch_image: stage: spack_base - needs: [base_spack_image_aarch64, base_spack_image_x86_64] + needs: + - job: base_spack_image_aarch64 + optional: true + - job: base_spack_image_x86_64 extends: .make-multiarch-image after_script: - echo -e "BASE_IMAGE=$PERSIST_IMAGE_NAME" >> multiarch.env diff --git a/.gitlab/includes/gcc13_santis_pipeline.yml b/.gitlab/includes/gcc13_santis_pipeline.yml index 9f7d0d335..7a9b953c3 100644 --- a/.gitlab/includes/gcc13_santis_pipeline.yml +++ b/.gitlab/includes/gcc13_santis_pipeline.yml @@ -23,12 +23,14 @@ gcc13_santis_spack_compiler_image: extends: - .variables_gcc13_santis_config - .compiler_image_template_santis + allow_failure: true gcc13_santis_spack_image: needs: [gcc13_santis_spack_compiler_image] extends: - .variables_gcc13_santis_config - .dependencies_image_template_santis + allow_failure: true gcc13_santis_build: needs: [gcc13_santis_spack_image]