Skip to content

CallStormer is conducting a tRIBS build test for Linux systems. #11

CallStormer is conducting a tRIBS build test for Linux systems.

CallStormer is conducting a tRIBS build test for Linux systems. #11

name: compile_and_test_linux
run-name: ${{github.actor}} is conducting a tRIBS build test for Linux systems.
on:
workflow_dispatch:
push:
paths:
- "**.cpp"
- "**.h"
- "**/CMakeLists.txt"
jobs:
build_and_test:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
# Install MPI Development Files
- name: Install MPI Development Files
run: sudo apt-get install -y libopenmpi-dev
# Set CMAKE_PREFIX_PATH
#- name: Set CMAKE_PREFIX_PATH
# run: export CMAKE_PREFIX_PATH=/usr/lib/openmpi:$CMAKE_PREFIX_PATH
# Build Parallel Version of tRIBS
- name: Create build directory and run CMake for parallel version
run: cmake -S . -B cmake-build-parallel -DCMAKE_BUILD_TYPE=Release -Dparallel=ON -Dpackaging=ON -Dos=Linux
- name: Build Project Parallel
run: cmake --build cmake-build-parallel --target all
# Build Serial Version of tRIBS
- name: Create build directory and run CMake for serial version
run: cmake -S . -B cmake-build-serial -DCMAKE_BUILD_TYPE=Release -Dparallel=OFF -Dpackaging=ON -Dos=Linux
- name: Build Project Serial
run: cmake --build cmake-build-serial --target all
# Run CPack
- name: Package tRIBS
run: cpack --config packaging/utilities/MultiCPackConfig.cmake
# Upload STGZ package
- name: Package artifacts
uses: actions/upload-artifact@v4
with:
name: tRIBS-STGZ-linux
path: "packaging/Linux/TIN-based Real-time Integrated Basin Simulator-5.2.0.sh"