From e893a920b08aed55a34a3f7f8850a9ee4a1214f3 Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Mon, 26 Feb 2024 08:58:12 -0800 Subject: [PATCH 01/10] CI: Spack v0.21.1 Update Spack in CI to the latest stable release. --- .github/ci/spack-envs/clang14_py311_nompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml | 2 +- .../ci/spack-envs/clang7_nopy_ompi_h5_ad2_libcpp/spack.yaml | 2 +- .github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml | 2 +- .github/workflows/dependencies/install_spack | 2 +- .github/workflows/tooling.yml | 3 +++ 9 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.github/ci/spack-envs/clang14_py311_nompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang14_py311_nompi_h5_ad2/spack.yaml index 08bbe79f00..57b52fc8ff 100644 --- a/.github/ci/spack-envs/clang14_py311_nompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang14_py311_nompi_h5_ad2/spack.yaml @@ -17,7 +17,7 @@ spack: cmake: externals: - spec: cmake@3.22.1 - prefix: /usr + prefix: /usr/local buildable: False perl: externals: diff --git a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml index 9baf1d3151..1472d6b4a1 100644 --- a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.23.0 - prefix: /usr + prefix: /usr/local buildable: False openmpi: externals: diff --git a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2_libcpp/spack.yaml b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2_libcpp/spack.yaml index 0785e5c4b6..332ce831da 100644 --- a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2_libcpp/spack.yaml +++ b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2_libcpp/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.23.0 - prefix: /usr + prefix: /usr/local buildable: False openmpi: externals: diff --git a/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml index 81e3155f8f..0cbe69903f 100644 --- a/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.23.0 - prefix: /usr + prefix: /usr/local buildable: False mpich: externals: diff --git a/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml index ebe5acb1bd..c5362ae3a8 100644 --- a/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.23.0 - prefix: /usr + prefix: /usr/local buildable: False openmpi: externals: diff --git a/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml index 6e528c5ddb..85122d30da 100644 --- a/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.23.0 - prefix: /usr + prefix: /usr/local buildable: False openmpi: externals: diff --git a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml index 7f051faa79..0941ce4f86 100644 --- a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml +++ b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml @@ -16,7 +16,7 @@ spack: cmake: externals: - spec: cmake@3.22.1 - prefix: /usr + prefix: /usr/local buildable: False libfabric: externals: diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index 7a45620503..2376acd981 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.22.3" +spack_ver="0.21.1" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] diff --git a/.github/workflows/tooling.yml b/.github/workflows/tooling.yml index 4f4ed5e377..91da948356 100644 --- a/.github/workflows/tooling.yml +++ b/.github/workflows/tooling.yml @@ -20,6 +20,9 @@ jobs: run: | sudo apt-get update sudo apt-get install clang clang-tidy gfortran libopenmpi-dev python + + which cmake + sudo .github/workflows/dependencies/install_spack - name: Build env: {CC: clang, CXX: clang++} From b8824c63719e09f121458cf6e3b3788eacb2e55f Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 27 Feb 2024 13:51:06 -0800 Subject: [PATCH 02/10] Spack CI: Disable MGARD See https://github.com/CODARcode/MGARD/issues/229 --- .github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml | 2 +- .github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml index 1472d6b4a1..124f0f8ae5 100644 --- a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml @@ -12,7 +12,7 @@ spack: packages: adios2: - variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 ~blosc2 + variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 ~mgard ~blosc2 cmake: externals: - spec: cmake@3.23.0 diff --git a/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml index 0cbe69903f..5ec5ed488c 100644 --- a/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang8_py38_mpich_h5_ad2/spack.yaml @@ -12,7 +12,7 @@ spack: packages: adios2: - variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 ~blosc2 + variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 ~mgard ~blosc2 cmake: externals: - spec: cmake@3.23.0 diff --git a/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml index c5362ae3a8..de1740f8ca 100644 --- a/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad2/spack.yaml @@ -12,7 +12,7 @@ spack: packages: adios2: - variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 + variants: ~mgard ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 cmake: externals: - spec: cmake@3.23.0 diff --git a/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml index 85122d30da..fc359f2c45 100644 --- a/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/gcc7_py36_ompi_h5_ad2/spack.yaml @@ -12,7 +12,7 @@ spack: packages: adios2: - variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 + variants: ~mgard ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 cmake: externals: - spec: cmake@3.23.0 diff --git a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml index 0941ce4f86..ffe630d906 100644 --- a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml +++ b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml @@ -12,7 +12,7 @@ spack: packages: adios2: - variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 + variants: ~mgard ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2 cmake: externals: - spec: cmake@3.22.1 From 8bdc2caa79fcf75b5cb1ce756916c34bf9e8dd23 Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 27 Feb 2024 15:58:57 -0800 Subject: [PATCH 03/10] Avoid Compiling ADIOS 2.7.1 w/ Clang Compile issue. --- .github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml index ffe630d906..c113af0d2c 100644 --- a/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml +++ b/.github/ci/spack-envs/gcc_py_ompi_h5_ad2_arm64/spack.yaml @@ -6,7 +6,7 @@ # spack: specs: - - adios2 + - adios2@2.10 - hdf5 - openmpi From b2f1a4157d80ab87023b40c3b4b414cebed6aa9d Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 12 Mar 2024 10:21:02 -0700 Subject: [PATCH 04/10] Spack 0.21.2 --- .github/workflows/dependencies/install_spack | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index 2376acd981..2d1e210117 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.21.1" +spack_ver="0.21.2" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] From 10cecbf73d78e8fdf9234adf63167e77284dbcbf Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 12 Mar 2024 11:05:38 -0700 Subject: [PATCH 05/10] Try Spack GH Action --- .../clang7_nopy_ompi_h5_ad2/spack.yaml | 3 +++ .github/workflows/linux.yml | 19 +++++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml index 124f0f8ae5..78795610c1 100644 --- a/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml +++ b/.github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/spack.yaml @@ -60,3 +60,6 @@ spack: mirrors: E4S: https://cache.e4s.io + local-buildcache: + url: oci://ghcr.io/openPMD/spack-buildcache + signed: false diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 53daa723c7..b170beef99 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -86,6 +86,8 @@ jobs: clang7_nopy_ompi_h5_ad2: runs-on: ubuntu-20.04 + permissions: + packages: write if: github.event.pull_request.draft == false steps: - uses: actions/checkout@v4 @@ -96,13 +98,20 @@ jobs: run: | sudo apt-get update sudo apt-get install clang-7 gfortran libopenmpi-dev python3 - sudo .github/workflows/dependencies/install_spack + - name: Set up Spack + uses: spack/setup-spack@v2 + with: + ref: 187b8adb4faa7ad8e5de0baab9a610d158772823 + buildcache: true + color: true + path: /opt/spack - name: Build env: {CC: clang-7, CXX: clang++-7, CXXFLAGS: -Werror} + shell: spack-bash {0} run: | sudo ln -s "$(which cmake)" /usr/bin/cmake eval $(spack env activate --sh .github/ci/spack-envs/clang7_nopy_ompi_h5_ad2/) - spack install + spack install --no-check-signature share/openPMD/download_samples.sh build cmake -S . -B build \ @@ -116,6 +125,12 @@ jobs: cd build ctest --output-on-failure + - name: Push packages and update index + run: | + spack -e . mirror set --push --oci-username ${{ github.actor }} --oci-password "${{ secrets.GITHUB_TOKEN }}" local-buildcache + spack -e . buildcache push --base-image ubuntu:20.04 --update-index local-buildcache + if: ${{ !cancelled() }} + # TODO # clang7_py36_nompi_h5_ad2_libstdc++ From 5e95e293c0d1e7b719f7922a50cd21c53571afb5 Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 12 Mar 2024 14:57:51 -0700 Subject: [PATCH 06/10] Spack Action: Setup relative in `opt/spack/` CI was not accepting `/opt/spack` in checkout of action. --- .github/workflows/linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index b170beef99..440c9ffea3 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -104,7 +104,7 @@ jobs: ref: 187b8adb4faa7ad8e5de0baab9a610d158772823 buildcache: true color: true - path: /opt/spack + path: opt/spack - name: Build env: {CC: clang-7, CXX: clang++-7, CXXFLAGS: -Werror} shell: spack-bash {0} From b7cde1e2f56cf04a98af104b5f45307425a1afe9 Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 11 Jun 2024 13:39:02 -0700 Subject: [PATCH 07/10] Spack v0.22.0 --- .github/workflows/dependencies/install_spack | 2 +- .github/workflows/linux.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index 2d1e210117..e125eefa30 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.21.2" +spack_ver="0.22.0" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 440c9ffea3..d5da9ba52d 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -101,7 +101,7 @@ jobs: - name: Set up Spack uses: spack/setup-spack@v2 with: - ref: 187b8adb4faa7ad8e5de0baab9a610d158772823 + ref: v0.22.0 buildcache: true color: true path: opt/spack From 7134bcadbac636bb5d969023fdb79a164a8f46be Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 16 Jul 2024 11:02:23 -0700 Subject: [PATCH 08/10] CI: Spack v0.22.1 --- .github/workflows/dependencies/install_spack | 2 +- .github/workflows/linux.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index e125eefa30..6f7260e75c 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.22.0" +spack_ver="0.22.1" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index d5da9ba52d..d38fb482ea 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -101,7 +101,7 @@ jobs: - name: Set up Spack uses: spack/setup-spack@v2 with: - ref: v0.22.0 + ref: v0.22.1 buildcache: true color: true path: opt/spack From 3e20c9796f093b03fbc9b789543b72f46aaa07fb Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 1 Oct 2024 15:56:34 -0700 Subject: [PATCH 09/10] CI: Spack v0.22.2 --- .github/workflows/dependencies/install_spack | 2 +- .github/workflows/linux.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index 6f7260e75c..837bfefffc 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.22.1" +spack_ver="0.22.2" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index d38fb482ea..2b3d153cf5 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -101,7 +101,7 @@ jobs: - name: Set up Spack uses: spack/setup-spack@v2 with: - ref: v0.22.1 + ref: v0.22.2 buildcache: true color: true path: opt/spack From 525709c4f44bf5301bfd3e5d0220fafcc37479ea Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Tue, 18 Feb 2025 10:09:14 -0800 Subject: [PATCH 10/10] Spack: v0.23.0 --- .github/workflows/dependencies/install_spack | 2 +- .github/workflows/linux.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependencies/install_spack b/.github/workflows/dependencies/install_spack index 837bfefffc..05f80cdde2 100755 --- a/.github/workflows/dependencies/install_spack +++ b/.github/workflows/dependencies/install_spack @@ -3,7 +3,7 @@ set -eu -o pipefail -spack_ver="0.22.2" +spack_ver="0.23.0" cd /opt if [[ -d spack && ! -f spack_${spack_ver} ]] diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 2b3d153cf5..842ccf2cfb 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -101,7 +101,7 @@ jobs: - name: Set up Spack uses: spack/setup-spack@v2 with: - ref: v0.22.2 + ref: v0.23.0 buildcache: true color: true path: opt/spack