-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
93 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
name: spack-ci-gcc | ||
|
||
on: | ||
pull_request: | ||
types: [opened, synchronize, reopened] | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-24.04 | ||
steps: | ||
|
||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
|
||
- name: Setup Python | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.11' | ||
|
||
- name: Pip install mepo | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install mepo | ||
- name: Mepo clone | ||
run: | | ||
mepo clone | ||
- name: Set up Spack | ||
uses: spack/setup-spack@v2 | ||
with: | ||
ref: develop # Spack version (examples: develop, releases/v0.21) | ||
color: true # Force color output (SPACK_COLOR=always) | ||
path: spack # Where to clone Spack | ||
buildcache: false # Do not use the spack buildcache | ||
|
||
- name: Find compilers | ||
shell: spack-bash {0} | ||
run: | | ||
spack compiler find | ||
- name: Set default compiler and target | ||
shell: spack-bash {0} | ||
run: | | ||
spack config add 'packages:all:compiler:[[email protected]]' | ||
spack config add 'packages:all:require:target=x86_64_v3' | ||
- name: Create Spack environment | ||
shell: spack-bash {0} | ||
run: | | ||
spack env create spack-env | ||
spack env activate spack-env | ||
- name: Login | ||
shell: spack-bash {0} | ||
run: | | ||
spack -e spack-env mirror add mapl-buildcache oci://ghcr.io/mathomp4/mapl-buildcache | ||
spack -e spack-env mirror set --oci-username ${{ github.actor }} --oci-password "${{ secrets.BUILDCACHE_TOKEN }}" mapl-buildcache | ||
spack -e spack-env mirror list | ||
spack -e spack-env buildcache update-index mapl-buildcache | ||
spack -e spack-env buildcache list --allarch | ||
- name: Concretize | ||
shell: spack-bash {0} | ||
run: | | ||
spack -e spack-env concretize | ||
- name: Install | ||
shell: spack-bash {0} | ||
run: | | ||
spack -e spack-env install --add --no-check-signature --use-buildcache only \ | ||
esmf gftl gftl-shared fargparse pflogger pfunit yafyaml ecbuild udunits | ||
- name: Build with Cmake | ||
shell: spack-bash {0} | ||
run: | | ||
spack env activate spack-env | ||
spack load \ | ||
esmf gftl gftl-shared fargparse pflogger pfunit yafyaml ecbuild udunits | ||
spack find --loaded | ||
FC=gfortran-14 CC=gcc-14 CXX=g++-14 | ||
cmake -B build -S . -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_F2PY=OFF -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX} | ||
cmake --build build -j 4 | ||
cmake --install build | ||
cd build | ||
make -j4 tests | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters