Skip to content

Merge branch 'develop' into feature/headers-wall-werror-proof #1134

Merge branch 'develop' into feature/headers-wall-werror-proof

Merge branch 'develop' into feature/headers-wall-werror-proof #1134

Workflow file for this run

name: Spack Builds
on: [push]
jobs:
hiop_spack_builds:
# 20.04 is a version shared by E4S cache and Spack binaries for x86_64
runs-on: ubuntu-20.04
container: spack/ubuntu-focal:latest
strategy:
matrix:
spack_spec:
- hiop@develop+mpi~raja~shared~kron~sparse ^openmpi
- hiop@develop~mpi~raja~shared~kron~sparse
- hiop@develop~mpi+raja~shared~kron~sparse
# We will need coinhsl for this, but what are the rules for using
# a coinhsl tarball?
# - hiop@develop~mpi~raja~shared~kron+sparse
name: Build HiOp with Spack
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Build Environment
env:
SPACK_SPEC: ${{ matrix.spack_spec }}
run: |
ls && pwd
. /opt/spack/share/spack/setup-env.sh
spack debug report
# Just use the public mirror to bootstrap concretizer
# https://spack.io/spack-binary-packages
spack mirror add spack_public_mirror https://binaries.spack.io/develop
spack buildcache keys --install --trust
# Need to create an environment to install hiop in the action's branch
spack env create -d ./spack-env
spack env activate ./spack-env
spack add $SPACK_SPEC target=x86_64
spack develop --path $(pwd) --no-clone hiop@develop
# Add E4S mirror - likely relying on spack cache but nice backup
# https://oaciss.uoregon.edu/e4s/inventory.html
# Need to add build cache before concretizing to re-use dependencies
# Using custom e4s cache due to known bug
# TODO: Update cache link after bug is resolved
spack mirror add E4S https://cache.e4s.io/23.02
spack buildcache keys --install --trust
spack concretize --reuse
git config --global --add safe.directory $(pwd)
spack --stacktrace install --fail-fast