Skip to content

git update

git update #237

Workflow file for this run

name: LaGriT Build Status
on: [push, pull_request]
jobs:
build:
#name: ${{ matrix.config.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macOS-latest]
gcc_v: [9] # Version of GFortran we want to use.
env:
FC: gfortran-${{ matrix.gcc_v }}
GCC_V: ${{ matrix.gcc_v }}
steps:
- uses: actions/checkout@v2
- uses: lukka/get-cmake@latest
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade coverage
python -m pip install --upgrade cmake
- name: Install GFortran Linux
if: contains(matrix.os, 'ubuntu')
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install -y gcc-${GCC_V} gfortran-${GCC_V}
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \
--slave /usr/bingcov gcov /usr/bin/gcov-${GCC_V}
- name: Install GFortran macOS
if: contains(matrix.os, 'macos')
run: brew install gcc@${GCC_V} || brew upgrade gcc@${GCC_V} || true
- name: Compile Exodus
run: |
mkdir -p ~/TPLs/build/
mkdir -p ~/TPLs/install/
EXO_BUILD_DIR=$HOME/TPLs/build/ \
EXO_INSTALL_DIR=$HOME/TPLs/install/ \
./install-exodus.sh
- name: Build/test LaGriT
run: |
mkdir build/ && mkdir install/ && cd build/
cmake .. \
-D LaGriT_BUILD_STATIC=ON \
-D CMAKE_BUILD_TYPE=Debug \
-D Exodus_ROOT=${EXO_INSTALL_DIR} \
-D CMAKE_INSTALL_PREFIX=$(pwd)/../install/
make && make install
- name: Test PyLaGriT
run: |
echo "lagrit_exe : '$(pwd)/install/bin/lagrit'" >> ~/.pylagritrc
cat ~/.pylagritrc
cd PyLaGriT/
python3 setup.py install
python3 -c "from pylagrit import PyLaGriT; lg = PyLaGriT(); lg.sendline('cmo/status')"
- name: Upload compiled LaGriT
uses: actions/upload-artifact@v2.2.4
with:
name: lagrit-${{ matrix.os }}
path: ./install/bin/lagrit
if-no-files-found: error
retention-days: 30