Skip to content

Improving CI pipeline with more steps #110

Improving CI pipeline with more steps

Improving CI pipeline with more steps #110

Workflow file for this run

name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
pull_request:
branches: [ master ]
types:
- opened
- reopened
- synchronize
- ready_for_review
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# clang-format-lint:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v2 # required to mount the Github Workspace to a volume
# - name: Run clang-format-lint
# uses: DoozyX/[email protected]
# with:
# source: '.'
# exclude: './third_party ./external .git'
# extensions: 'h,cpp'
# clangFormatVersion: 11
# cppcheck:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Run cppcheck
# uses: addnab/docker-run-action@v3
# with:
# image: bailool/mc-calib-dev:latest
# options: -v ${{ github.workspace }}:/home/MC-Calib
# run: |
# cppcheck MC-Calib/McCalib/include
# cppcheck MC-Calib/McCalib/src
# clang-tidy:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Run clang-tidy
# uses: addnab/docker-run-action@v3
# with:
# image: bailool/mc-calib-dev:latest
# options: -v ${{ github.workspace }}:/home/MC-Calib
# run: |
# mkdir MC-Calib/build && cd MC-Calib/build
# cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=Debug ..
# run-clang-tidy
# unit-tests-with-sanitizers:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Checkout MC-Calib-data
# uses: actions/checkout@v4
# with:
# repository: BAILOOL/MC-Calib-data
# path: ${{ github.workspace }}/data
# lfs: 'true'
# - name: Unzip MC-Calib-data
# run: tar xf ${{ github.workspace }}/data/Blender_Images.tar.gz -C ${{ github.workspace }}/data
# - name: Run tests
# uses: addnab/docker-run-action@v3
# with:
# image: bailool/mc-calib-dev:latest
# options: -v ${{ github.workspace }}:/home/MC-Calib
# run: |
# mkdir MC-Calib/build && cd MC-Calib/build
# cmake -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZERS=ON ..
# make -j4
# ./tests/boost_tests_run
unit-tests-with-valgrind:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Checkout MC-Calib-data
uses: actions/checkout@v4
with:
repository: BAILOOL/MC-Calib-data
path: ${{ github.workspace }}/data
lfs: 'true'
- name: Unzip MC-Calib-data
run: tar xf ${{ github.workspace }}/data/Blender_Images.tar.gz -C ${{ github.workspace }}/data
- name: Run tests
uses: addnab/docker-run-action@v3
with:
image: bailool/mc-calib-dev:latest
options: -v ${{ github.workspace }}:/home/MC-Calib
run: |
mkdir MC-Calib/build && cd MC-Calib/build
cmake -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZERS=OFF ..
make -j4
valgrind --leak-check=full \
--leak-check=full \
--track-origins=yes \
--show-reachable=yes \
--error-limit=no \
--gen-suppressions=all \
--verbose \
--log-file=valgrind-out.txt \
--suppressions=../tests/valgrind_suppress/opencv_valgrind.supp \
--suppressions=../tests/valgrind_suppress/opencv_valgrind_3rdparty.supp \
--suppressions=../tests/valgrind_suppress/boost_valgrind.supp \
./apps/calibrate/calibrate ../tests/configs_for_end2end_tests/calib_param_synth_Scenario1.yml