Merge pull request #4399 from mfem/override #8
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
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced | |
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files | |
# LICENSE and NOTICE for details. LLNL-CODE-806117. | |
# | |
# This file is part of the MFEM library. For more information and source code | |
# availability visit https://mfem.org. | |
# | |
# MFEM is free software; you can redistribute it and/or modify it under the | |
# terms of the BSD-3 license. We welcome feedback and contributions, see file | |
# CONTRIBUTING.md for details. | |
name: "Build Analysis" | |
permissions: | |
actions: write | |
on: | |
push: | |
branches: | |
- master | |
- next | |
pull_request: | |
workflow_dispatch: | |
env: | |
HYPRE_ARCHIVE: v2.19.0.tar.gz | |
HYPRE_TOP_DIR: hypre-2.19.0 | |
METIS_ARCHIVE: metis-4.0.3.tar.gz | |
METIS_TOP_DIR: metis-4.0.3 | |
COVERAGE_ENV: mfem-coverage | |
jobs: | |
gitignore: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/cancel-workflow-action@0.12.1 | |
with: | |
access_token: ${{ github.token }} | |
- name: checkout MFEM | |
uses: actions/checkout@v4 | |
with: | |
path: mfem | |
- name: Get MPI (Linux) | |
run: | | |
sudo apt-get install mpich libmpich-dev | |
- name: Cache Hypre Install | |
id: hypre-cache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ env.HYPRE_TOP_DIR }} | |
key: ${{ runner.os }}-build-${{ env.HYPRE_TOP_DIR }}-v2.5 | |
- name: Get Hypre | |
if: steps.hypre-cache.outputs.cache-hit != 'true' | |
uses: mfem/github-actions/build-hypre@v2.5 | |
with: | |
archive: ${{ env.HYPRE_ARCHIVE }} | |
dir: ${{ env.HYPRE_TOP_DIR }} | |
target: int32 | |
- name: Cache Metis Install | |
id: metis-cache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ env.METIS_TOP_DIR }} | |
key: ${{ runner.os }}-build-${{ env.METIS_TOP_DIR }}-v2.5 | |
- name: Install Metis | |
if: steps.metis-cache.outputs.cache-hit != 'true' | |
uses: mfem/github-actions/build-metis@v2.5 | |
with: | |
archive: ${{ env.METIS_ARCHIVE }} | |
dir: ${{ env.METIS_TOP_DIR }} | |
# MFEM build and test | |
- name: build-mfem | |
uses: mfem/github-actions/build-mfem@v2.5 | |
with: | |
os: ${{ runner.os }} | |
target: opt | |
codecov: NO | |
mpi: par | |
build-system: make | |
hypre-dir: ${{ env.HYPRE_TOP_DIR }} | |
metis-dir: ${{ env.METIS_TOP_DIR }} | |
mfem-dir: mfem | |
- name: test (no clean) | |
run: | | |
cd mfem && make test-noclean | |
- name: gitignore | |
run: | | |
cd mfem/tests/scripts | |
./runtest gitignore |