diff --git a/.github/build-ci/config/include.yaml b/.github/build-ci/config/include.yaml new file mode 100644 index 0000000000..8c8139c716 --- /dev/null +++ b/.github/build-ci/config/include.yaml @@ -0,0 +1,6 @@ +# This file is included via the manifest +include: + - git: https://github.com/ACCESS-NRI/access-spack-packages + branch: api-v2 + paths: + - .github/build-ci/config/include diff --git a/.github/build-ci/data/standard.json b/.github/build-ci/data/standard.json deleted file mode 100644 index bd5c978e9c..0000000000 --- a/.github/build-ci/data/standard.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "gcc_compiler": "gcc@13.2.0", - "intel_compiler": "intel@2021.10.0", - "oneapi_compiler": "oneapi@2025.2.0", - "target": "x86_64" -} diff --git a/.github/build-ci/manifests/gcc.spack.yaml.j2 b/.github/build-ci/manifests/gcc.spack.yaml.j2 index 91e6f98e3c..10e171d217 100644 --- a/.github/build-ci/manifests/gcc.spack.yaml.j2 +++ b/.github/build-ci/manifests/gcc.spack.yaml.j2 @@ -1,11 +1,12 @@ spack: + include: + # Include configuration from this repository, with the environment variable defined in build-ci + - path: $SPACK_MANIFEST_REPOSITORY_PATH/.github/build-ci/config specs: - access-fms @git.{{ ref }} ~large_file - access-fms @git.{{ ref }} +large_file packages: all: require: - - '%{{ gcc_compiler }} target={{ target}}' - concretizer: - unify: false + - '%access_gcc' view: false diff --git a/.github/build-ci/manifests/intel.spack.yaml.j2 b/.github/build-ci/manifests/intel.spack.yaml.j2 index 1f8aa3e139..9e6266fc42 100644 --- a/.github/build-ci/manifests/intel.spack.yaml.j2 +++ b/.github/build-ci/manifests/intel.spack.yaml.j2 @@ -1,11 +1,12 @@ spack: + include: + # Include configuration from this repository, with the environment variable defined in build-ci + - path: $SPACK_MANIFEST_REPOSITORY_PATH/.github/build-ci/config specs: - access-fms @git.{{ ref }} ~large_file - access-fms @git.{{ ref }} +large_file packages: all: require: - - '%{{ intel_compiler }} target={{ target}}' - concretizer: - unify: false + - '%access_intel' view: false diff --git a/.github/build-ci/manifests/oneapi.spack.yaml.j2 b/.github/build-ci/manifests/oneapi.spack.yaml.j2 index d3003ddcfa..9e6266fc42 100644 --- a/.github/build-ci/manifests/oneapi.spack.yaml.j2 +++ b/.github/build-ci/manifests/oneapi.spack.yaml.j2 @@ -1,14 +1,12 @@ spack: + include: + # Include configuration from this repository, with the environment variable defined in build-ci + - path: $SPACK_MANIFEST_REPOSITORY_PATH/.github/build-ci/config specs: - access-fms @git.{{ ref }} ~large_file - access-fms @git.{{ ref }} +large_file packages: - gcc-runtime: - require: - - '%gcc target={{ target }}' all: require: - - '%{{ oneapi_compiler }} target={{ target}}' - concretizer: - unify: false + - '%access_intel' view: false diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 956720fa36..f14d8ad54b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -11,7 +11,7 @@ jobs: outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up matrix id: set-matrix @@ -29,11 +29,9 @@ jobs: max-parallel: 5 matrix: file: ${{ fromJson(needs.pre-ci.outputs.matrix) }} - uses: access-nri/build-ci/.github/workflows/ci.yml@v2 + uses: access-nri/build-ci/.github/workflows/ci.yml@v4 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 - # spack-config-ref: main - # spack-ref: releases/v0.22 + # Default args (including explicit spack/spack-config versions) + # are specified in https://github.com/ACCESS-NRI/build-ci/tree/v4/.github/workflows#inputs