Skip to content

Infra Update v8: spack v1 Support#124

Merged
CodeGat merged 7 commits intomainfrom
infra-update-v8
Feb 13, 2026
Merged

Infra Update v8: spack v1 Support#124
CodeGat merged 7 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.

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-om2/pr124-7 at 7b67366 is here: #124 (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 Dec 5, 2025

@harshula for these models using old compilers and toolchains, is https://github.com/ACCESS-NRI/ACCESS-OM2/pull/124/files#diff-e8582e74fa156f4e5729a850e52b24f2fde2d815c2c9c360f88c4cf90db851abR52-R58 how it would be referenced?

@harshula
Copy link
Collaborator

harshula commented Dec 8, 2025

Hi @CodeGat , Waiting for an answer at spack/spack#51237 (comment) . If they are equivalent, then we need to make a decision based on the portability of an MDR.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

🚀 Attempted to deploy access-om2 Prerelease pr124-1 with commit 900d861

🖥️ Gadi Deployment ❌

@CodeGat
Copy link
Member Author

CodeGat commented Feb 6, 2026

Note that the above fault is because we are checking the previous main manifest (pre-v8) against the PR one (v8). This will only be an issue for pre-merge testing (as we are doing now). I'll create a test branch we can use...

@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

🚀 Attempted to deploy access-om2 Prerelease pr124-1 with commit 2c7a4ea

🖥️ Gadi Deployment ❌

@CodeGat
Copy link
Member Author

CodeGat commented Feb 6, 2026

This fault is because the current version of access-spack-packages (namely, the original version on main of this repository) is an api-v1 repository.
This means that all MDRs will have to move to an api-v2-compliant version of access-spack-packages, rather than keep the old versions!

@CodeGat CodeGat temporarily deployed to Gadi Prerelease February 6, 2026 05:57 — with GitHub Actions Inactive
@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

🚀 Attempted to deploy access-om2 Prerelease pr124-2 with commit 2d1444e

🖥️ Gadi Deployment ✔️

Usage Instructions

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

  • 2025.12.000 as a Release (when merged).
  • pr124-2 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-om2/pr124-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-om2-pr124-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.

@CodeGat CodeGat requested a review from harshula February 8, 2026 21:44
@CodeGat
Copy link
Member Author

CodeGat commented Feb 8, 2026

Tested that it built successfully - now just need a valid tag rather than the api-v2 branch to get this ready for review!

@CodeGat CodeGat temporarily deployed to Gadi Prerelease February 9, 2026 02:43 — with GitHub Actions Inactive
@github-actions
Copy link
Contributor

github-actions bot commented Feb 9, 2026

🚀 Attempted to deploy access-om2 Prerelease pr124-3 with commit e7ea852

🖥️ Gadi Deployment ✔️

Usage Instructions

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

  • 2025.12.000 as a Release (when merged).
  • pr124-3 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-om2/pr124-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-om2-pr124-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.

harshula
harshula previously approved these changes Feb 9, 2026
Copy link
Collaborator

@harshula harshula left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤞

@CodeGat CodeGat marked this pull request as ready for review February 11, 2026 01:11
@CodeGat
Copy link
Member Author

CodeGat commented Feb 11, 2026

Now we just need to verify that all the changes that are in the manifest are required for this PR, then it'll be ready to go!

@CodeGat CodeGat requested a review from harshula February 11, 2026 03:55
@github-actions
Copy link
Contributor

🚀 Attempted to deploy access-om2 Prerelease pr124-7 with commit 7b67366

🖥️ Gadi Deployment ✔️

Usage Instructions

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

  • 2025.12.000 as a Release (when merged).
  • pr124-7 as a Prerelease (during this PR).

This Prerelease is accessible on Gadi using:

module use /g/data/vk83/prerelease/modules
module load access-om2/pr124-7

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-om2-pr124-7 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

This has been tested and works fine. It should be equivalent to the current main, just in a spack v1 format.

Copy link
Collaborator

@harshula harshula left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤞

@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@ACCESS-NRI ACCESS-NRI deleted a comment from github-actions bot Feb 12, 2026
@CodeGat CodeGat removed the request for review from dougiesquire February 12, 2026 04:46
@anton-seaice
Copy link
Collaborator

!update-configs

@github-actions
Copy link
Contributor

🔧 Opening Model Configuration PRs in ACCESS-NRI/access-om2-configs

Configurations Requested

Configurations requested from profile default:

  • dev-1deg_jra55_ryf
Pull Requests Opened

The following PRs were opened:

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

Copy link
Collaborator

@anton-seaice anton-seaice left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Dr Tommy

@CodeGat CodeGat merged commit ffe0507 into main Feb 13, 2026
@CodeGat CodeGat deleted the infra-update-v8 branch February 13, 2026 03:27
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.

3 participants