diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8486c0bc6d..5f9356040c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,6 +30,7 @@ jobs: mpi: [n, y] omp: [n, y] dagmc: [n] + libmesh: [n] event: [n] vectfit: [n] @@ -44,6 +45,10 @@ jobs: python-version: 3.8 mpi: y omp: y + - libmesh: y + python-version: 3.8 + mpi: y + omp: y - event: y python-version: 3.8 omp: y @@ -63,6 +68,7 @@ jobs: DAGMC: ${{ matrix.dagmc }} EVENT: ${{ matrix.event }} VECTFIT: ${{ matrix.vectfit }} + LIBMESH: ${{ matrix.libmesh }} steps: - @@ -73,7 +79,11 @@ jobs: uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - + - + name: Set up CMake + uses: jwlawson/actions-setup-cmake@v1.5 + with: + cmake-version: 3.12.x - name: Environment Variables run: | @@ -88,6 +98,8 @@ jobs: sudo apt -y update sudo apt install -y mpich \ libmpich-dev \ + libnetcdf-dev \ + libpnetcdf-dev \ libhdf5-serial-dev \ libhdf5-mpich-dev \ libeigen3-dev diff --git a/tools/ci/gha-install-libmesh.sh b/tools/ci/gha-install-libmesh.sh new file mode 100755 index 0000000000..c5cdc5c408 --- /dev/null +++ b/tools/ci/gha-install-libmesh.sh @@ -0,0 +1,24 @@ + +#!/bin/bash +set -ex + +CURRENT_DIR=$(pwd) + +# libMESH install +# cd $HOME +# mkdir LIBMESH && cd LIBMESH +# git clone https://github.com/libmesh/libmesh -b v1.6.0 --recurse-submodules +# mkdir build && cd build +# ../libmesh/configure --prefix=$HOME/LIBMESH --enable-exodus --disable-mpi +# make -j4 install +# export LIBMESH_PC=$HOME/LIBMESH/lib/pkgconfig/ +# rm -rf $HOME/LIBMESH/build + +cd $HOME +git clone https://github.com/idaholab/moose MOOSE +cd MOOSE + +./scripts/update_and_rebuild_petsc.sh CXX=mpicxx CC=mpicc FC=mpifort +./scripts/update_and_rebuild_libmesh.sh CXX=mpicxx CC=mpicc FC=mpifort + +cd $CURRENT_DIR diff --git a/tools/ci/gha-install.py b/tools/ci/gha-install.py index 3dac29407c..d3fdfe2efd 100644 --- a/tools/ci/gha-install.py +++ b/tools/ci/gha-install.py @@ -51,7 +51,8 @@ def install(omp=False, mpi=False, phdf5=False, dagmc=False, libmesh=False): if libmesh: cmake_cmd.append('-Dlibmesh=ON') - cmake_cmd.append('-DCMAKE_PREFIX_PATH=/home/travis/LIBMESH') + libmesh_path = os.environ.get('HOME') + '/MOOSE/libmesh/installed' + cmake_cmd.append('-DCMAKE_PREFIX_PATH=' + libmesh_path) # Build in coverage mode for coverage testing cmake_cmd.append('-Dcoverage=on') diff --git a/tools/ci/gha-install.sh b/tools/ci/gha-install.sh index 88e6ab03d6..3fb66ca764 100755 --- a/tools/ci/gha-install.sh +++ b/tools/ci/gha-install.sh @@ -21,7 +21,7 @@ fi # Install libMesh if needed if [[ $LIBMESH = 'y' ]]; then - ./tools/ci/travis-install-libmesh.sh + ./tools/ci/gha-install-libmesh.sh fi # Install mpi4py for MPI configurations diff --git a/tools/ci/travis-install-libmesh.sh b/tools/ci/travis-install-libmesh.sh deleted file mode 100755 index ae3e234992..0000000000 --- a/tools/ci/travis-install-libmesh.sh +++ /dev/null @@ -1,17 +0,0 @@ - -#!/bin/bash -set -ex - -CURRENT_DIR=$(pwd) - -# libMESH install -cd $HOME -mkdir LIBMESH && cd LIBMESH -git clone https://github.com/libmesh/libmesh -b v1.6.0 --recurse-submodules -mkdir build && cd build -../libmesh/configure --prefix=$HOME/LIBMESH --enable-exodus --disable-mpi -make -j4 install -export LIBMESH_PC=$HOME/LIBMESH/lib/pkgconfig/ -rm -rf $HOME/LIBMESH/build - -cd $CURRENT_DIR