From 7a9e1bf564b01193893571dde9807a454feb51b8 Mon Sep 17 00:00:00 2001 From: Tommy Gatti Date: Mon, 17 Nov 2025 14:19:12 +1100 Subject: [PATCH 1/5] infra: Update to v3 --- .github/workflows/ci.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f04268f5..f842dea6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,13 +34,14 @@ jobs: exclude: # TODO: Remove this exclusion once https://github.com/ACCESS-NRI/GCOM4/issues/15 is fixed - file: .github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 - uses: access-nri/build-ci/.github/workflows/ci.yml@v2 + uses: access-nri/build-ci/.github/workflows/ci.yml@v3 with: spack-manifest-path: ${{ matrix.file }} allow-ssh-into-spack-install: false # If true, PR author must ssh into instance to complete job spack-manifest-data-path: .github/build-ci/data/standard.json - # spack-packages-ref: main + # builtin-spack-packages-ref: main + # access-spack-packages-ref: api-v2 # spack-config-ref: main - # spack-ref: releases/v0.22 + # spack-ref: releases/v1.0 secrets: spack-install-command-pat: ${{ secrets.SPACK_INSTALL_COMMAND_PAT }} From 73c56722bb2be77f9e1e5db4fa249c4b4b78c340 Mon Sep 17 00:00:00 2001 From: Tommy Gatti Date: Fri, 5 Dec 2025 09:10:11 +1100 Subject: [PATCH 2/5] [no-ci] infra: Update to spack v1.1 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f842dea6..6c9ed9ec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,6 +42,6 @@ jobs: # builtin-spack-packages-ref: main # access-spack-packages-ref: api-v2 # spack-config-ref: main - # spack-ref: releases/v1.0 + # spack-ref: releases/v1.1 secrets: spack-install-command-pat: ${{ secrets.SPACK_INSTALL_COMMAND_PAT }} From c1c3876a6d953edbc6bab5adca637a9b932395c6 Mon Sep 17 00:00:00 2001 From: Tommy Gatti Date: Tue, 17 Feb 2026 16:29:30 +1100 Subject: [PATCH 3/5] Update comments --- .github/workflows/ci.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6c9ed9ec..52a5d776 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,9 +39,7 @@ jobs: spack-manifest-path: ${{ matrix.file }} allow-ssh-into-spack-install: false # If true, PR author must ssh into instance to complete job spack-manifest-data-path: .github/build-ci/data/standard.json - # builtin-spack-packages-ref: main - # access-spack-packages-ref: api-v2 - # spack-config-ref: main - # spack-ref: releases/v1.1 + # Default args (including explicit spack/spack-packages/spack-config versions) + # are specified in https://github.com/ACCESS-NRI/build-ci/tree/v3/.github/workflows#inputs secrets: spack-install-command-pat: ${{ secrets.SPACK_INSTALL_COMMAND_PAT }} From 013423e980638e95ff2da8477d83501ff66aed30 Mon Sep 17 00:00:00 2001 From: Tommy Gatti Date: Thu, 12 Mar 2026 11:27:35 +1100 Subject: [PATCH 4/5] Use toolchains --- .github/build-ci/data/standard.json | 6 +++--- .github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 | 6 +++++- .github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 | 6 +++++- .../build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 | 6 +++++- .github/build-ci/manifests/intel-access-om2.spack.yaml.j2 | 6 +++++- .../build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 | 7 ++++--- .github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 | 7 ++++--- 7 files changed, 31 insertions(+), 13 deletions(-) diff --git a/.github/build-ci/data/standard.json b/.github/build-ci/data/standard.json index 0a008113..6313e220 100644 --- a/.github/build-ci/data/standard.json +++ b/.github/build-ci/data/standard.json @@ -1,7 +1,7 @@ { - "intel_compiler": "intel@2021.10.0", - "gcc_compiler": "gcc@13.2.0", - "oneapi_compiler": "oneapi@2025.2.0", + "intel_compiler_version": "2021.10.0", + "gcc_compiler_version": "13.2.0", + "oneapi_compiler_version": "2025.2.0", "target": "x86_64", "mom5_version_om2": "git.2025.08.000=access-om2", "mom5_version_esm1p6": "git.2025.08.000=access-esm1.6", diff --git a/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 index 67f53dea..a03125c0 100644 --- a/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 @@ -38,9 +38,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' + gcc: + require: + - '@{{ gcc_compiler_version }}' all: require: - - '%{{ gcc_compiler }} target={{ target }}' + - '%access_gcc' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file diff --git a/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 index 3530baf3..d4bb965f 100644 --- a/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 @@ -35,9 +35,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' + gcc: + require: + - '@{{ gcc_compiler_version }}' all: require: - - '%{{ gcc_compiler }} target={{ target }}' + - '%access_gcc' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file diff --git a/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 index e2ee8728..e4ce8847 100644 --- a/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 @@ -38,9 +38,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' + intel-oneapi-compilers-classic: + require: + - '@{{ intel_compiler_version }}' all: require: - - '%{{ intel_compiler }} target={{ target }}' + - '%access_intel' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file diff --git a/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 index 0a8543c8..f8a6b8e9 100644 --- a/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 @@ -35,9 +35,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' + intel-oneapi-compilers-classic: + require: + - '@{{ intel_compiler_version }}' all: require: - - '%{{ intel_compiler }} target={{ target }}' + - '%access_intel' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file diff --git a/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 index 9af26f06..24d1ece9 100644 --- a/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 @@ -38,12 +38,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' - gcc-runtime: + intel-oneapi-compilers: require: - - '%gcc target={{ target }}' + - '@{{ oneapi_compiler_version }}' all: require: - - '%{{ oneapi_compiler }} target={{ target }}' + - '%access_oneapi' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file diff --git a/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 index 631e04ff..db5d163f 100644 --- a/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 @@ -35,12 +35,13 @@ spack: openmpi: require: - '@{{ openmpi_version }}' - gcc-runtime: + intel-oneapi-compilers: require: - - '%gcc target={{ target }}' + - '@{{ oneapi_compiler_version }}' all: require: - - '%{{ oneapi_compiler }} target={{ target }}' + - '%access_oneapi' + - 'target={{ target }}' concretizer: unify: false view: false \ No newline at end of file From 22e21e55596993310c5ae5372e6fee53262b1635 Mon Sep 17 00:00:00 2001 From: dougiesquire Date: Fri, 13 Mar 2026 15:11:08 +1100 Subject: [PATCH 5/5] Build-CI: Update dependency versions --- .github/build-ci/data/standard.json | 19 +++++++++---------- .../manifests/gcc-access-esm1p6.spack.yaml.j2 | 9 +++++++-- .../manifests/gcc-access-om2.spack.yaml.j2 | 5 +++-- .../intel-access-esm1p6.spack.yaml.j2 | 8 ++++++-- .../manifests/intel-access-om2.spack.yaml.j2 | 5 +++-- .../oneapi-access-esm1p6.spack.yaml.j2 | 8 ++++++-- .../manifests/oneapi-access-om2.spack.yaml.j2 | 7 ++++--- 7 files changed, 38 insertions(+), 23 deletions(-) diff --git a/.github/build-ci/data/standard.json b/.github/build-ci/data/standard.json index 6313e220..3d80eb8e 100644 --- a/.github/build-ci/data/standard.json +++ b/.github/build-ci/data/standard.json @@ -3,18 +3,17 @@ "gcc_compiler_version": "13.2.0", "oneapi_compiler_version": "2025.2.0", "target": "x86_64", - "mom5_version_om2": "git.2025.08.000=access-om2", - "mom5_version_esm1p6": "git.2025.08.000=access-esm1.6", - "cice5_version_om2": "git.2025.03.001=access-om2", - "cice5_version_esm1p6": "git.access-esm1.6-2025.07.001=access-esm1.6", - "um_version": "git.access-esm1.6-2025.06.000=access-esm1.6", + "mom5_version": "git.2026.02.000", + "cice5_version": "2026.01.000", + "um_version": "git.2026.02.000=access-esm1.6", + "cable_version": "2025.11.000", "gcom4_version": "git.2025.08.000=access-esm1.5", - "libaccessom2_version": "git.2025.05.001=access-om2", + "libaccessom2_version": "git.2026.02.000=access-om2", "netcdf_c_version": "4.9.2", "netcdf_fortran_version": "4.6.1", - "parallelio_version": "2.6.2", - "openmpi_version": "5.0.5", - "access_fms_version": "git.mom5-2025.05.000=mom5", - "access_generic_tracers_version": "2025.07.002", + "parallelio_version": "2.6.8", + "openmpi_version": "5.0.8", + "access_fms_version": "git.mom5-2025.08.000=mom5", + "access_generic_tracers_version": "2026.02.000", "access_mocsy_version": "2025.07.002" } diff --git a/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 index a03125c0..3dfd8ec1 100644 --- a/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/gcc-access-esm1p6.spack.yaml.j2 @@ -7,13 +7,18 @@ spack: packages: mom5: require: - - '@{{ mom5_version_esm1p6 }}' + - '@{{ mom5_version }}=access-esm1.6' cice5: require: - - '@{{ cice5_version_esm1p6 }}' + - '@{{ cice5_version }}' + - 'nxglob=360 nyglob=300 blckx=30 blcky=300 mxblcks=1' # grid size and block size um7: require: - '@{{ um_version }}' + cable: + require: + - '@{{ cable_version }}' + - library=access-esm1.6 gcom4: require: - '@{{ gcom4_version }}' diff --git a/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 index d4bb965f..faa46903 100644 --- a/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/gcc-access-om2.spack.yaml.j2 @@ -4,10 +4,11 @@ spack: packages: mom5: require: - - '@{{ mom5_version_om2 }}' + - '@{{ mom5_version }}=access-om2' cice5: require: - - '@{{ cice5_version_om2 }}' + - '@{{ cice5_version }}' + - 'io_type=PIO build_system=cmake' libaccessom2: require: - '@{{ libaccessom2_version }}' diff --git a/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 index e4ce8847..38dd0f00 100644 --- a/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/intel-access-esm1p6.spack.yaml.j2 @@ -7,13 +7,17 @@ spack: packages: mom5: require: - - '@{{ mom5_version_esm1p6 }}' + - '@{{ mom5_version }}=access-esm1.6' cice5: require: - - '@{{ cice5_version_esm1p6 }}' + - '@{{ cice5_version }}' + - 'nxglob=360 nyglob=300 blckx=30 blcky=300 mxblcks=1' # grid size and block size um7: require: - '@{{ um_version }}' + cable: + require: + - '@{{ cable_version }}' gcom4: require: - '@{{ gcom4_version }}' diff --git a/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 index f8a6b8e9..51528200 100644 --- a/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/intel-access-om2.spack.yaml.j2 @@ -4,10 +4,11 @@ spack: packages: mom5: require: - - '@{{ mom5_version_om2 }}' + - '@{{ mom5_version }}=access-om2' cice5: require: - - '@{{ cice5_version_om2 }}' + - '@{{ cice5_version }}' + - 'io_type=PIO build_system=cmake' libaccessom2: require: - '@{{ libaccessom2_version }}' diff --git a/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 b/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 index 24d1ece9..a40af1f6 100644 --- a/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 +++ b/.github/build-ci/manifests/oneapi-access-esm1p6.spack.yaml.j2 @@ -7,13 +7,17 @@ spack: packages: mom5: require: - - '@{{ mom5_version_esm1p6 }}' + - '@{{ mom5_version }}=access-esm1.6' cice5: require: - - '@{{ cice5_version_esm1p6 }}' + - '@{{ cice5_version }}' + - 'nxglob=360 nyglob=300 blckx=30 blcky=300 mxblcks=1' # grid size and block size um7: require: - '@{{ um_version }}' + cable: + require: + - '@{{ cable_version }}' gcom4: require: - '@{{ gcom4_version }}' diff --git a/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 b/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 index db5d163f..4bc84780 100644 --- a/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 +++ b/.github/build-ci/manifests/oneapi-access-om2.spack.yaml.j2 @@ -4,10 +4,11 @@ spack: packages: mom5: require: - - '@{{ mom5_version_om2 }}' + - '@{{ mom5_version }}=access-om2' cice5: require: - - '@{{ cice5_version_om2 }}' + - '@{{ cice5_version }}' + - 'io_type=PIO build_system=cmake' libaccessom2: require: - '@{{ libaccessom2_version }}' @@ -44,4 +45,4 @@ spack: - 'target={{ target }}' concretizer: unify: false - view: false \ No newline at end of file + view: false