Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 0 additions & 47 deletions .github/actions/spack-checkout-updated-ref/README.md

This file was deleted.

79 changes: 0 additions & 79 deletions .github/actions/spack-checkout-updated-ref/action.yml

This file was deleted.

4 changes: 0 additions & 4 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ This workflow handles building and running short CI tests on a given spack manif
| `spack-manifest-data-pairs` | `string` | An optional, multi-line string of space-separated key-value pairs to fill in `inputs.spack-manifest-path`. This is useful for filling in template values created dynamically by earlier jobs needed by this workflow. This doesn't include `{{ ref }}`, which is filled in automatically. | `false` | N/A | `"package mom5`(newline)`compiler intel"` |
| `ref` | `string` (Git ref) | The branch, tag, or commit SHA of the caller model component repository | `false` | `github.event.pull_request.head.sha` for PRs, `github.sha` otherwise | `"c0fef23fc1e69d3a31ec18fd8b7102acdf95f651"`, `"main"`, `"2025.01.000"` |
| `spack-config-ref` | `string` (Git ref) | The branch, tag, or commit SHA of the access-nri/spack-config repository to use | `false` | Ref in `spack-config`s `repos.yaml`, or `develop` if not specified | `"02125b01eb7c778c8d0ae0a02a260de474782e81"`, `"main"`, `"2025.01.000"` |
| `builtin-spack-packages-ref` | `string` (Git ref) | The branch, tag, or commit SHA of the `spack/spack-packages` repository to use | `false` | `"main"` | `"f7314790111ec43cf9cff60421c155b922c349ad"`, `"main"`, `"2025.01.000"` |
| `access-spack-packages-ref` | `string` (Git ref) | The branch, tag, or commit SHA of the `access-nri/access-spack-packages` repository to use | `false` | `"main"` | `"e4ba85db0be4a9b9493cf7581623f9997b9404a5"`, `"main"`, `"2025.01.000"` |
| `allow-ssh-into-spack-install` | `boolean` | Enable the actor of the workflow to SSH into the container where the spack packages have been installed. This is useful for gathering post-install information before the container is destroyed. This will also make the workflow wait until the actor SSHs into the container, or it times out, before continuing | `false` | `false` | `true`, `false` |
| `container-image-version` | `string` (Docker version ref) | The version of the container image to use for the runner. Can be either a `:TAG` or a `@sha256:SHA`. | `false` | `":rocky"` | `':8.9'` (tag), `'@sha256:1234...'` (SHA) |
| `spack-oci-buildcache-url` | `string` (OCI URL) | The URL to an oci-backed buildcache, available in spack >= v1.0. OCI-backed buildcaches are the only option for GitHub-hosted CI, and can be used as a backup for self-hosted CI's runner buildcache | `false` | N/A | `"oci://ghcr.io/ACCESS-NRI/build-ci-buildcache"`, `"oci://ghcr.io/ORG/IMAGE"` |
Expand Down Expand Up @@ -91,8 +89,6 @@ jobs:
spack-manifest-data-path: .github/build/data/data.json
spack-compiler-manifest-path: .github/build/compiler/intel.spack.yaml
spack-ref: releases/v0.22
builtin-spack-packages-ref: 2025.07.0
access-spack-packages-ref: 2025.05.000
spack-config-ref: 2025.10.001
allow-ssh-into-spack-install: true
run-self-hosted: false
Expand Down
66 changes: 8 additions & 58 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,20 +66,6 @@ on:
description: |
The branch, tag, or commit SHA of the access-nri/spack-config repository to use.
For example: main, 2025.03.0, 7ey2uy2.
builtin-spack-packages-ref:
required: false
type: string
# default: ref from spack-config's repos.yaml, or 'develop' otherwise
description: |
The branch, tag, or commit SHA of the spack/spack-packages repository to use.
For example: main, 2025.03.0, 7ey2uy2.
access-spack-packages-ref:
required: false
type: string
default: api-v2
description: |
The branch, tag, or commit SHA of the access-nri/spack-packages repository to use.
For example: main, 2025.03.0, 7ey2uy2.
spack-ref:
required: false
type: string
Expand Down Expand Up @@ -204,8 +190,8 @@ jobs:
spack-manifest-repository-sha: ${{ steps.checkout.outputs.commit }}
spack-sha: ${{ steps.spack-update.outputs.sha }}
spack-config-sha: ${{ steps.spack-config-update.outputs.sha }}
builtin-spack-packages-sha: ${{ steps.builtin-spack-packages-update.outputs.sha }}
access-spack-packages-sha: ${{ steps.access-spack-packages-update.outputs.sha }}
builtin-spack-packages-sha: ${{ steps.install.outputs.builtin-spack-packages-sha }}
access-spack-packages-sha: ${{ steps.install.outputs.access-spack-packages-sha }}
caller-sha: ${{ steps.checkout-caller.outputs.commit }}
artifact-pattern: ${{ steps.init.outputs.artifact-pattern }}
artifact-url: ${{ steps.upload.outputs.artifact-url }}
Expand Down Expand Up @@ -324,44 +310,6 @@ jobs:
spack mirror add --scope=access.nri.ci.user --autopush --unsigned runner_set_buildcache /opt/runner_set_buildcache
spack mirror list

- name: Spack - Get builtin ref from spack-config
if: inputs.builtin-spack-packages-ref == ''
id: get-default-builtin
# If inputs.builtin-spack-packages-ref is not provided, get the builtin-spack-packages-ref
# from spack-config's repos.yaml or use "develop" (the default branch) if not specified there either.
run: |
. ${{ steps.env.outputs.SPACK_ROOT }}/share/spack/setup-env.sh
# Accept both the overridden .builtin: and regular .builtin key. See ACCESS-NRI/spack-config#105 for more info.
ref=$(spack config get repos | yq '.repos | .builtin // ."builtin:" | .branch // .tag // .commit // "develop"')
echo "Default builtin-spack-packages-ref is $ref"
echo "ref=$ref" >> $GITHUB_OUTPUT

- name: Spack - Get spack-packages repo locations
id: spack-packages-locations
run: |
. ${{ steps.env.outputs.SPACK_ROOT }}/share/spack/setup-env.sh

echo "builtin=$(spack location --repo builtin)" >> $GITHUB_OUTPUT
echo "access-spack-packages=$(spack location --repo access.nri)" >> $GITHUB_OUTPUT

- name: Update - access-spack-package version
id: access-spack-packages-update
uses: ./build-ci/.github/actions/spack-checkout-updated-ref
with:
spack-packages-repository-name: access_spack_packages
spack-packages-repository-path: ${{ steps.spack-packages-locations.outputs.access-spack-packages }}
ref: ${{ inputs.access-spack-packages-ref }}
spack-instance-root-path: ${{ steps.env.outputs.SPACK_ROOT }}

- name: Update - builtin spack-package version
id: builtin-spack-packages-update
uses: ./build-ci/.github/actions/spack-checkout-updated-ref
with:
spack-packages-repository-name: builtin
spack-packages-repository-path: ${{ steps.spack-packages-locations.outputs.builtin }}
ref: ${{ inputs.builtin-spack-packages-ref || steps.get-default-builtin.outputs.ref }}
spack-instance-root-path: ${{ steps.env.outputs.SPACK_ROOT }}

- name: Spack - OCI Buildcache Init
if: inputs.spack-oci-buildcache-url != ''
run: |
Expand Down Expand Up @@ -488,6 +436,10 @@ jobs:

spack --debug install --fail-fast --deprecated

# Output builtin and access-spack-packages-shas
echo "access-spack-packages-sha=$(git -C $(spack location --repo access.nri) HEAD)" >> $GITHUB_OUTPUT
echo "builtin-spack-packages-sha=$(git -C $(spack location --repo builtin) HEAD)" >> $GITHUB_OUTPUT

- name: Manifest - Push to Buildcache
env:
# For pulling and pushing OCI buildcache
Expand Down Expand Up @@ -575,8 +527,6 @@ jobs:
"spack_compiler_manifest_path": "${{ inputs.spack-compiler-manifest-path }}",
"ref": "${{ inputs.ref }}",
"spack_config_ref": "${{ inputs.spack-config-ref }}",
"builtin_spack_packages_ref": "${{ inputs.builtin-spack-packages-ref }}",
"access_spack_packages_ref": "${{ inputs.access-spack-packages-ref }}",
"spack_ref": "${{ inputs.spack-ref }}",
"pytest_test_markers": "${{ inputs.pytest-test-markers }}",
"allow_ssh_into_spack_install": "${{ inputs.allow-ssh-into-spack-install }}",
Expand All @@ -589,8 +539,8 @@ jobs:
"spack_manifest_repository_sha": "${{ steps.checkout.outputs.commit }}",
"spack_sha": "${{ steps.spack-update.outputs.sha }}",
"spack_config_sha": "${{ steps.spack-config-update.outputs.sha }}",
"builtin_spack_packages_sha": "${{ steps.builtin-spack-packages-update.outputs.sha }}",
"access_spack_packages_sha": "${{ steps.access-spack-packages-update.outputs.sha }}",
"builtin_spack_packages_sha": "${{ steps.install.outputs.builtin-spack-packages-sha }}",
"access_spack_packages_sha": "${{ steps.install.outputs.access-spack-packages-sha }}",
"caller_sha": "${{ steps.checkout-caller.outputs.commit }}",
"container_id": "${{ steps.init.outputs.container-id }}",
"short_container_id": "${{ steps.init.outputs.short-container-id }}",
Expand Down