Skip to content

Dev

Dev #76

Workflow file for this run

name: Ubuntu
# Define the rules when this workflow should be applied
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
jobs:
build:
# Specify the type of the machine
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
# Install all dependencies needed for a successful build
# This is done primarily for the GUI library
- name: Install dependencies
run: /bin/bash .github/scripts/install_gui_dependencies.sh
# Configure the CMake project using CMake Presets
- name: Configure CMake
run: cmake --preset unix_makefiles_gcc_code_coverage
# Build the project
- name: Build
run: cmake --build --preset unix_makefiles_gcc_code_coverage -j10
# Run tests
- name: Tests
run: |
cd build/unix_makefiles/gcc/code_coverage
ctest --rerun-failed --output-on-failure
# Report test coverage
- name: Upload coverage reports to Codecov
run: bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
# EOF