Spack install #134
This file contains hidden or 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
| name: Spack install | |
| on: | |
| # Uncomment the below 'push' to trigger on push | |
| # push: | |
| # branches: | |
| # - "**" | |
| schedule: | |
| # '*' is a special character in YAML, so string must be quoted | |
| - cron: "0 2 * * SUN" | |
| workflow_dispatch: | |
| inputs: | |
| spack_package_repo: | |
| description: "Spack package repository to test" | |
| default: "spack/spack-packages" | |
| type: string | |
| spack_package_ref: | |
| description: "Spack package repository branch/tag to test" | |
| default: "develop" | |
| type: string | |
| ffcx_version: | |
| description: "Spack build tag" | |
| default: "main" | |
| type: string | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| container: ubuntu:latest | |
| steps: | |
| - name: Install Spack requirements | |
| run: | | |
| apt-get -y update | |
| apt-get install -y bzip2 curl file git gzip make patch python3-minimal tar xz-utils | |
| apt-get install -y g++ gfortran # compilers | |
| - name: Get Spack | |
| uses: actions/checkout@v6 | |
| with: | |
| path: ./spack | |
| repository: spack/spack | |
| - name: Get Spack packages | |
| if: github.event_name == 'workflow_dispatch' | |
| run: | | |
| . ./spack/share/spack/setup-env.sh | |
| spack repo update | |
| spack repo add --name test_pkgs https://github.com/${{ github.event.inputs.spack_package_repo }}.git ~/test_pkgs | |
| spack repo update --branch ${{ github.event.inputs.spack_package_ref }} test_pkgs | |
| spack repo list | |
| spack config get repos | |
| - name: Install FFCx and run tests | |
| if: github.event_name != 'workflow_dispatch' | |
| run: | | |
| . ./spack/share/spack/setup-env.sh | |
| spack env create ffcx-main | |
| spack env activate ffcx-main | |
| spack add py-fenics-ffcx@main | |
| spack install | |
| - name: Install FFCx and run tests | |
| if: github.event_name == 'workflow_dispatch' | |
| run: | | |
| . ./spack/share/spack/setup-env.sh | |
| spack env create ffcx-testing | |
| spack env activate ffcx-testing | |
| spack add py-fenics-ffcx@${{ github.event.inputs.ffcx_version }} | |
| spack install |