Skip to content

Updating CI

Updating CI #10

Workflow file for this run

name: Build and Run Tests
on:
pull_request:
branches: [ "master" ]
push:
branches: [ "master" ]
jobs:
# Build HiCR and run tests
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Updating Apt
run: sudo apt update
- name: Installing apt packages
run: sudo apt install build-essential git libgtest-dev libhwloc-dev openssh-client libopenblas-dev liblapack-dev liblapacke-dev libfabric-dev libibverbs-dev infiniband-diags libboost-context-dev curl jq python3-pip python3-venv pkgconf wget sudo libopenmpi-dev
- name: Installing meson, ninja and gcovr
run: python3 -m pip install meson ninja gcovr
- name: Install UCX
run: |
wget https://github.com/openucx/ucx/releases/download/v1.15.0/ucx-1.15.0.tar.gz
tar -zxf ucx-1.15.0.tar.gz
cd ucx-1.15.0
mkdir build
cd build
../configure --prefix=/usr/local
make -j8
sudo make install
rm -rf /ucx-1.15.0.tar.gz
rm -rf /ucx-1.15.0
- name: Install LPF
run: |
git clone -b noc_extension --single-branch --depth 1 https://github.com/Algebraic-Programming/LPF.git $HOME/lpf
cd $HOME/lpf
git checkout noc_extension
mkdir ./build
cd ./build
../bootstrap.sh --prefix=/usr/local
make -j8
sudo make install || true
sudo rm -rf $HOME/lpf
- name: Updating submodules
run: git submodule update --init --recursive
- name:
run: |
echo "Building..."
mkdir build
meson setup build -Dbuildtype=debug -Db_coverage=true -Dbackends=hwloc,pthreads,mpi,lpf,nosv,boost,opencl -Dfrontends=channel,RPCEngine,tasking,objectStore -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true
meson compile -C build
echo "Running tests..."
meson test -C build
echo "Creating coverage report..."
ninja -C build coverage