Skip to content

Bugfix/lustre

Bugfix/lustre #146

Workflow file for this run

name: Build with Spack
# Tests ParallelIO using spack tools
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Installs
run: |
set -x
sudo apt-get update
sudo apt-get install wget
sudo apt-get install libjpeg-dev
sudo apt-get install libz-dev
sudo apt-get install gfortran
- name: Get latest spack release tag
run: |
export SPACK_LATEST="$(curl -sL https://github.com/spack/spack/releases/latest |grep '<title>Release' | awk '{print $2}')"
printenv >> $GITHUB_ENV
- name: cache spack
id: cache-spack
uses: actions/cache@v3
with:
path: |
~/work/ParallelIO/ParallelIO/spack
~/.spack
key: spack-${{ runner.os }}-${{ env.SPACK_LATEST }}
- name: Get Spack
if: steps.cache-spack.outputs.cache-hit != 'true'
uses: actions/checkout@v3
with:
repository: spack/spack
path: spack
ref: ${{ env.SPACK_LATEST }}
- name: Prep spack
run: |
source $GITHUB_WORKSPACE/spack/share/spack/setup-env.sh
spack compiler find
# Remove the patch for gfortran, we don't want it
#
sed -i 's/patch(.*$//' $GITHUB_WORKSPACE/spack/var/spack/repos/builtin/packages/parallelio/package.py
- name: Build with spack
run: |
source $GITHUB_WORKSPACE/spack/share/spack/setup-env.sh
mkdir genf90
pushd genf90
ln -fs $GITHUB_WORKSPACE/scripts/genf90.pl .
popd
# the || true prevents a fail if parallelio is not installed
# spack uninstall -y parallelio@=develop+pnetcdf+fortran ^mpich || true
# spack dev-build -d $GITHUB_WORKSPACE parallelio@=develop+pnetcdf+fortran ^mpich
spack uninstall -y parallelio@develop+pnetcdf+fortran ^mpich || true
spack dev-build -d $GITHUB_WORKSPACE parallelio@develop+pnetcdf+fortran ^mpich
- name: Test parallelio
run: |
pioblddir=$(ls -td */ | head -1)
pushd $pioblddir
make tests
# Exclude two tests that are timing out.
ctest -VV -LE skipforspack
popd
- name: Setup tmate session
if: ${{ failure() }}
uses: mxschmitt/action-tmate@v3