Skip to content

Commit

Permalink
aws-pcluster stacks: static spack.yaml (spack#47918)
Browse files Browse the repository at this point in the history
  • Loading branch information
stephenmsachs authored Dec 8, 2024
1 parent 0b7fc36 commit 8a9e16d
Show file tree
Hide file tree
Showing 6 changed files with 274 additions and 338 deletions.
16 changes: 8 additions & 8 deletions share/spack/gitlab/cloud_pipelines/.gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -810,14 +810,6 @@ ml-darwin-aarch64-mps-build:

.aws-pcluster-generate:
image: { "name": "ghcr.io/spack/pcluster-amazonlinux-2:v2024-10-07", "entrypoint": [""] }
before_script:
# Use gcc from pre-installed spack store
- - . "./share/spack/setup-env.sh"
- . "/etc/profile.d/modules.sh"
- diff -q "/bootstrap/cloud_pipelines-config.yaml" "share/spack/gitlab/cloud_pipelines/configs/config.yaml" || echo "WARNING Install tree might have changed. You need to rebuild the pcluster-amazonlinux-2 container in spack/gitlab-runners."
- cp "share/spack/gitlab/cloud_pipelines/configs/config.yaml" "etc/spack/"
- /bin/bash "${SPACK_ROOT}/share/spack/gitlab/cloud_pipelines/scripts/pcluster/setup-pcluster.sh"
- rm "etc/spack/config.yaml"

# X86_64_V4 (one pipeline per target)
.aws-pcluster-x86_64_v4:
Expand All @@ -826,6 +818,10 @@ ml-darwin-aarch64-mps-build:

aws-pcluster-generate-x86_64_v4:
extends: [ ".linux_x86_64_v4", ".aws-pcluster-x86_64_v4", ".generate-base", ".tags-x86_64_v4", ".aws-pcluster-generate"]
before_script:
- - . "./share/spack/setup-env.sh"
# TODO: Move this to the container next time it is rebuilt
- export PATH=/home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-x86_64_v3/gcc-7.3.1/binutils-2.37-qvccg7zpskturysmr4bzbsfrx34kvazo/bin:$PATH

aws-pcluster-build-x86_64_v4:
extends: [ ".linux_x86_64_v4", ".aws-pcluster-x86_64_v4", ".build" ]
Expand All @@ -846,6 +842,10 @@ aws-pcluster-build-x86_64_v4:
aws-pcluster-generate-neoverse_v1:
# TODO: Use updated runner tags: https://github.com/spack/spack-infrastructure/pull/694/files
extends: [ ".linux_neoverse_v1", ".aws-pcluster-neoverse_v1", ".generate-neoverse_v1", ".aws-pcluster-generate"]
before_script:
- - . "./share/spack/setup-env.sh"
# TODO: Move this to the container next time it is rebuilt
- export PATH=/home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/binutils-2.37-2yxz3xsjfmesxujxtlrgcctxlyilynmp/bin:$PATH

aws-pcluster-build-neoverse_v1:
extends: [ ".linux_neoverse_v1", ".aws-pcluster-neoverse_v1", ".build" ]
Expand Down
112 changes: 0 additions & 112 deletions share/spack/gitlab/cloud_pipelines/scripts/pcluster/setup-pcluster.sh

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,7 @@ spack:
- . /etc/profile.d/modules.sh
- spack --version
- spack arch
# Use gcc from pre-installed spack store
- - cp share/spack/gitlab/cloud_pipelines/configs/config.yaml etc/spack/
- /bin/bash "${SPACK_ROOT}/share/spack/gitlab/cloud_pipelines/scripts/pcluster/setup-pcluster.sh"
- rm etc/spack/config.yaml
- export PATH=/home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/binutils-2.37-2yxz3xsjfmesxujxtlrgcctxlyilynmp/bin:$PATH
- signing-job:
before_script:
# Do not distribute Intel & ARM binaries
Expand All @@ -40,3 +37,98 @@ spack:

cdash:
build-group: AWS Packages

compilers:
- compiler:
environment: {}
extra_rpaths: []
flags: {}
modules: []
operating_system: amzn2
paths:
cc: /usr/bin/gcc
cxx: /usr/bin/g++
f77: /usr/bin/gfortran
fc: /usr/bin/gfortran
spec: gcc@=7.3.1
target: aarch64
- compiler:
environment: {}
extra_rpaths: []
flags: {}
modules: []
operating_system: amzn2
paths:
cc: /home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/gcc-12.4.0-v6wxye6ijzrxnzxftcwnpu3psohsjl2b/bin/gcc
cxx: /home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/gcc-12.4.0-v6wxye6ijzrxnzxftcwnpu3psohsjl2b/bin/g++
f77: /home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/gcc-12.4.0-v6wxye6ijzrxnzxftcwnpu3psohsjl2b/bin/gfortran
fc: /home/software/spack/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeh/linux-amzn2-aarch64/gcc-7.3.1/gcc-12.4.0-v6wxye6ijzrxnzxftcwnpu3psohsjl2b/bin/gfortran
spec: gcc@=12.4.0
target: aarch64

packages:
acfl:
require:
- one_of: ["%gcc target=aarch64"]
message: "Clang based compilers need GCC libraries and they should be made available for the wide range of CPUs they actually support.
Edit $SPACK_ROOT/etc/spack/packages.yaml to change this default."
gromacs:
require:
- one_of:
- "gromacs@2024.3 %arm ^fftw ^openmpi"
- "gromacs@2024.3 %gcc ^armpl-gcc ^openmpi"
libfabric:
buildable: true
externals:
- prefix: /opt/amazon/efa/
spec: libfabric@1.17.0
require: ['fabrics=shm,efa']
llvm:
variants: ~lldb
mpas-model:
require:
- one_of:
- "precision=single make_target=llvm %arm ^parallelio+pnetcdf"
- "precision=single %gcc ^parallelio+pnetcdf"
mpich:
require: "mpich pmi=pmi2 device=ch4 netmod=ofi +slurm"
nvhpc:
require:
- one_of:
- "nvhpc %gcc target=aarch64"
message: "NVHPC should be built with GCC and should be made available for the wide range of CPUs they actually support.
Edit $SPACK_ROOT/etc/spack/packages.yaml to change this default."
openfoam:
require: "openfoam %gcc ^scotch@6.0.9"
openmpi:
variants: ~atomics ~cuda ~cxx ~cxx_exceptions ~internal-hwloc ~java +legacylaunchers ~lustre ~memchecker +pmi +romio ~singularity +vt +wrapper-rpath fabrics=ofi schedulers=slurm
require: '@4:'
# Palace does not build correctly with armpl until https://github.com/awslabs/palace/pull/207 is merged into a version.
# palace:
# require:
# - one_of: ["palace cxxflags=\"-include cstdint\" ^fmt@9.1.0"]
pmix:
require: "pmix@3:"
quantum-espresso:
require: "quantum-espresso@6.6 %gcc ^armpl-gcc"
slurm:
buildable: false
externals:
- prefix: /opt/slurm
spec: slurm@22.05.8 +pmix
wrf:
require:
- one_of:
- "wrf%arm"
- "wrf%gcc"
all:
compiler: [gcc, arm, nvhpc, clang]
providers:
blas: [armpl-gcc, openblas]
fftw-api: [armpl-gcc, fftw]
lapack: [armpl-gcc, openblas]
mpi: [openmpi, mpich]
scalapack: [netlib-scalapack]
permissions:
read: world
write: user
Loading

0 comments on commit 8a9e16d

Please sign in to comment.