Skip to content

Commit

Permalink
[skip ci] Infra Update: spack.yaml Simplification, new Projections (#7
Browse files Browse the repository at this point in the history
)

* [skip ci] spack.yaml: Simplify modules, update spack.packages.all section, update projections to include hash

* [skip ci] spack.yaml: Remove hash from root projection

* [skip ci] spack.yaml: Update to be in line with `model-deployment-template`

* [skip ci] spack.yaml: Update to be in line with ACCESS-NRI/model-deployment-template@569cd3e
  • Loading branch information
CodeGat authored Nov 15, 2024
1 parent ee6abb6 commit e3c943c
Showing 1 changed file with 25 additions and 29 deletions.
54 changes: 25 additions & 29 deletions spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,54 +4,50 @@
# configuration settings.
spack:
specs:
# The root Spack Bundle Recipe (SBR) for the model and overall version of
# the deployment:
# TODO: Replace the MODEL and VERSION.
# The root SBD for the model and overall version of the deployment:
# - [email protected]

packages:
# TODO: Specify versions and variants of dependencies where required
# Specification of dependency versions and variants goes here.
# CI/CD requires that the first element of the require is only a version:
# Specification of dependency versions and variants. CI/CD requires that
# the first element of the require is only a version:
# TODO: Specify versions and variants of dependencies as required.
# openmpi:
# require:
# - '@4.0.2'
# - '@4.1.5'

# Specifications that apply to all packages
all:
# TODO: Specify compiler/targets for all packages
# compiler: [[email protected]]
# target: [x86_64]
# require:
# - '%[email protected]'
# - 'target=x86_64'
view: true
concretizer:
unify: true
modules:
default:
enable:
- tcl
roots:
tcl: $spack/../release/modules
lmod: $spack/../release/lmod
tcl:
hash_length: 0
include:
# Explicitly, which packages are accessible as modules
# TODO: Add packages that will be included as modules
# TODO: Add MODEL and PACKAGEs that will have a corresponding module
# - MODEL
exclude_implicits: true
all:
autoload: direct
conflict:
- '{name}'
environment:
set:
'SPACK_{name}_ROOT': '{prefix}'
# - PACKAGE1
# - PACKAGE2
projections:
# TODO: Add explicit projections for modules that will be found with `module load`.
# Naming scheme for the above included modules.
# These projection versions must be the same as the
# `spack.packages.*.require[0]` version but without the `@git.`.
# Ex. `require` version `@git.2024.04.21` -> projection `2024.04.21`.
all: '{name}/{version}'
# These projection VERSIONs must be the same as the
# `spack.packages.*.require[0]` VERSION but without the `@git.` and
# without the RHS of the equals sign, if there is one.
#
# For a MODEL, an example projection is `{name}/2024.10.0`.
# For a PACKAGE where `require` VERSION is
# `@git.2024.04.21=access-esm1.5`, the projection becomes
# `{name}/2024.04.21-{hash:7}`.
# TODO: Add explicit projections for modules that will be found with
# `module load`.
# MODEL: '{name}/VERSION'
# PACKAGE1: '{name}/VERSION1-{hash:7}'
# PACKAGE2: '{name}/VERSION2-{hash:7}'
# config:
# overridden spack configurations, if needed
# mirrors:
Expand Down

0 comments on commit e3c943c

Please sign in to comment.