Skip to content

Streamline and simplify CI building #268

Streamline and simplify CI building

Streamline and simplify CI building #268

name: Linux Build/Test for PR and collaborator push
on:
# allows us to run workflows manually
workflow_dispatch:
pull_request:
paths-ignore:
- '.github/workflows/docker_publish.yml'
- '.github/workflows/housekeeping.yml'
- 'CI/**'
push:
branches-ignore:
- develop
paths-ignore:
- '.github/workflows/docker_publish.yml'
- '.github/workflows/housekeeping.yml'
- 'CI/**'
jobs:
BuildTestMasterDev:
runs-on: ubuntu-latest
env:
hdf5_versions: ${{ matrix.hdf5_versions }}
hdf5_build_dir: hdf5_build_dir
strategy:
matrix:
ubuntu_versions : [
18.04,
20.04,
]
compiler : [
gcc,
clang,
]
hdf5_versions : [
1.10.4,
]
moab_versions : [
5.3.0,
]
container:
image: ghcr.io/${{ github.repository_owner }}/dagmc-ci-ubuntu-${{ matrix.ubuntu_versions }}-${{ matrix.compiler}}-ext-hdf5_${{ matrix.hdf5_versions}}-moab_${{ matrix.moab_versions }}/moab:stable
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
submodules: recursive
- name: Building DAGMC
run: |
ln -s $GITHUB_WORKSPACE /root/build_dir/DAGMC
mkdir -p ./build
cd ./build
cmake ../ -DMOAB_DIR=${moab_install_dir} \
-DBUILD_GEANT4=ON \
-DGEANT4_DIR=${geant4_install_dir} \
-DBUILD_CI_TESTS=ON \
-DBUILD_MW_REG_TESTS=OFF \
-DBUILD_STATIC_EXE=OFF \
-DBUILD_STATIC_LIBS=OFF \
-DCMAKE_C_COMPILER=${CC} \
-DCMAKE_CXX_COMPILER=${CXX} \
-DCMAKE_Fortran_COMPILER=gfortran \
-DCMAKE_INSTALL_PREFIX=${install_dir}/dagmc \
-DDOUBLE_DOWN=${double_down} \
-Ddd_ROOT=${double_down_install_dir} && \
make -j4 && \
make install
- name: Testing DAGMC
run: |
cd $GITHUB_WORKSPACE
PATH=${install_dir}/dagmc/bin:${PATH} CTEST_OUTPUT_ON_FAILURE=1 make test