Skip to content

Infra Update v8: spack v1 Support#168

Open
CodeGat wants to merge 15 commits intomainfrom
infra-update-v8
Open

Infra Update v8: spack v1 Support#168
CodeGat wants to merge 15 commits intomainfrom
infra-update-v8

Conversation

@CodeGat
Copy link
Member

@CodeGat CodeGat commented Nov 18, 2025

References issue ACCESS-NRI/build-cd#313 and PR ACCESS-NRI/build-cd#326
References rollout issue ACCESS-NRI/build-cd#328
References project Spack `0.22` to `1.0` Migration

Important

This PR is a major update to the deployment infrastructure. See below for the prerequisites for this repository to be able to merge this PR.

Important

This major version change marks the end of major infrastructure updates for deployments to spack < 1.0.
If you want to deploy to instances of spack < 1.0, you must use build-cd < v8.
If you want to deploy to instances of spack >= 1.0, you must use build-cd >= v8.

Background

We are moving on up to spack v1! This update to spack contains many bug fixes, optimisations and new features that can be incorporated into build-cd.

This update also contains changes that make spack v0.X incompatible with this build-cd v8 update - the most prominent one being the splitting of spacks core codebase from it's builtin spack-packages repo. This means that for provenance, one to keep track of both builtin spack-packages and our own, renamed access-spack-packages. build-cd will centrally control the version of builtin spack-packages for a given instance, and config/versions.jsons spack-packages key is renamed to access-spack-packages.

As noted earlier, this major version of build-cd can only support spack v1, due to spack v1-specific commands in the infrastructure. If you still want to deploy to spack v0.X, you will need to change build-cd to v7, and update the config/versions.json file/spack.yaml.

Features

  • Support for spack v1: We're moving to a new, non-beta version of spack! It contains bug fixes, features and optimisations over the old version.
  • No more spack.config!: This is now handled in spack-config via the .custom-scopes key in config/versions.json!

Prerequisites for Merging

  • Update build-cd entrypoints (this PR!)
  • Update config/versions.json with new inputs (also this PR!)
  • Validate compiler additions to the spack manifest (this PR, too!)
  • Test and Verify Model built with spack v1

🚀 The latest prerelease access-esm1p6/pr168-5 at 8690f74 is here: #168 (comment) 🚀

@CodeGat CodeGat added the type:infra Related to CI/CD label Nov 18, 2025
@CodeGat CodeGat self-assigned this Nov 18, 2025
@CodeGat
Copy link
Member Author

CodeGat commented Jan 5, 2026

Note: Rebased all the changes from the v6/v7 infra updates, so this should be good to go once the linked build-cd PRs are done.

@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@github-actions
Copy link

🚀 Attempted to deploy access-esm1p6 Prerelease pr168-1 with commit 4cd0d7f

🖥️ Gadi Deployment ✔️

Usage Instructions

access-esm1.6, defined in spack.yaml, will be deployed to Gadi as:

  • 2026.01.000 as a Release (when merged).
  • pr168-1 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-esm1p6/pr168-1

When using the above modules, the binaries shall be on your $PATH.

For advanced users, this Prerelease is also accessible on Gadi via /g/data/vk83/prerelease/apps/spack/1.1/spack in the access-esm1p6-pr168-1 environment.
Due to inode-saving measures, one will have to manually untar the environment metadata before environment activation with tar -xf .spack-env .spack-env.tar. It will require one to have write privileges.

Configuration Information

This Prerelease is deployed using:

If the above was not what was expected, commit changes to config/versions.json in this PR, or propose changes to build-cds config/settings.json.

@CodeGat
Copy link
Member Author

CodeGat commented Feb 12, 2026

Although it installed fine, it failed to get the metadata from the restricted directory. I'll fix up this bug now.

Edit: Fixed via ACCESS-NRI/build-cd#357

@CodeGat CodeGat marked this pull request as ready for review February 12, 2026 05:20
@github-actions
Copy link

🚀 Attempted to deploy access-esm1p6 Prerelease pr168-2 with commit 137da68

🖥️ Gadi Deployment ✔️

Usage Instructions

access-esm1.6, defined in spack.yaml, will be deployed to Gadi as:

  • 2026.01.000 as a Release (when merged).
  • pr168-2 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-esm1p6/pr168-2

When using the above modules, the binaries shall be on your $PATH.

For advanced users, this Prerelease is also accessible on Gadi via /g/data/vk83/prerelease/apps/spack/1.1/spack in the access-esm1p6-pr168-2 environment.
Due to inode-saving measures, one will have to manually untar the environment metadata before environment activation with tar -xf .spack-env .spack-env.tar. It will require one to have write privileges.

Configuration Information

This Prerelease is deployed using:

If the above was not what was expected, commit changes to config/versions.json in this PR, or propose changes to build-cds config/settings.json.

@github-actions
Copy link

🚀 Attempted to deploy access-esm1p6 Prerelease pr168-3 with commit b51aa55

🖥️ Gadi Deployment ✔️

Usage Instructions

access-esm1.6, defined in spack.yaml, will be deployed to Gadi as:

  • 2026.01.000 as a Release (when merged).
  • pr168-3 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-esm1p6/pr168-3

When using the above modules, the binaries shall be on your $PATH.

For advanced users, this Prerelease is also accessible on Gadi via /g/data/vk83/prerelease/apps/spack/1.1/spack in the access-esm1p6-pr168-3 environment.
Due to inode-saving measures, one will have to manually untar the environment metadata before environment activation with tar -xf .spack-env .spack-env.tar. It will require one to have write privileges.

Configuration Information

This Prerelease is deployed using:

If the above was not what was expected, commit changes to config/versions.json in this PR, or propose changes to build-cds config/settings.json.

@CodeGat
Copy link
Member Author

CodeGat commented Feb 12, 2026

The above deployment was successful (as was the metadata generation).

@CodeGat
Copy link
Member Author

CodeGat commented Feb 13, 2026

!update-configs

@github-actions
Copy link

🔧 Opening Model Configuration PRs in ACCESS-NRI/access-esm1.6-configs

Configurations Requested

Configurations requested from profile default:

  • dev-1pctCO2

  • dev-4xCO2+concentrations

  • dev-historical+concentrations

  • dev-preindustrial+concentrations

Pull Requests Opened

The following PRs were opened:

More details can be found in the workflow run: https://github.com/ACCESS-NRI/ACCESS-ESM1.6/actions/runs/21974705756

@github-actions
Copy link

🚀 Attempted to deploy access-esm1p6 Prerelease pr168-4 with commit 0d8b7df

🖥️ Gadi Deployment ✔️

Usage Instructions

access-esm1.6, defined in spack.yaml, will be deployed to Gadi as:

  • 2026.01.000 as a Release (when merged).
  • pr168-4 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-esm1p6/pr168-4

When using the above modules, the binaries shall be on your $PATH.

For advanced users, this Prerelease is also accessible on Gadi via /g/data/vk83/prerelease/apps/spack/1.1/spack in the access-esm1p6-pr168-4 environment.
Due to inode-saving measures, one will have to manually untar the environment metadata before environment activation with tar -xf .spack-env .spack-env.tar. It will require one to have write privileges.

Configuration Information

This Prerelease is deployed using:

If the above was not what was expected, commit changes to config/versions.json in this PR, or propose changes to build-cds config/settings.json.

@CodeGat
Copy link
Member Author

CodeGat commented Feb 18, 2026

!update-configs

@github-actions
Copy link

🔧 Opening/Updating Model Configuration PRs in ACCESS-NRI/access-esm1.6-configs

Configurations Requested

Configurations requested from profile default:

  • dev-1pctCO2

  • dev-4xCO2+concentrations

  • dev-historical+concentrations

  • dev-preindustrial+concentrations

Pull Requests Opened/Updated

The following PRs were opened/updated:

More details can be found in the workflow run: https://github.com/ACCESS-NRI/ACCESS-ESM1.6/actions/runs/22122642995

@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 18, 2026
@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 18, 2026
@github-actions
Copy link

🚀 Attempted to deploy access-esm1p6 Prerelease pr168-5 with commit 8690f74

🖥️ Gadi Deployment ✔️

Usage Instructions

access-esm1.6, defined in spack.yaml, will be deployed to Gadi as:

  • 2026.02.000 as a Release (when merged).
  • pr168-5 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-esm1p6/pr168-5

When using the above modules, the binaries shall be on your $PATH.

For advanced users, this Prerelease is also accessible on Gadi via /g/data/vk83/prerelease/apps/spack/1.1/spack in the access-esm1p6-pr168-5 environment.
Due to inode-saving measures, one will have to manually untar the environment metadata before environment activation with tar -xf .spack-env .spack-env.tar. It will require one to have write privileges.

Configuration Information

This Prerelease is deployed using:

If the above was not what was expected, commit changes to config/versions.json in this PR, or propose changes to build-cds config/settings.json.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:infra Related to CI/CD

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant