From 7d8468e01fcb13240b069446d92e27704cab8ff9 Mon Sep 17 00:00:00 2001 From: Guillaume Pasero <guillaume.pasero@c-s.fr> Date: Mon, 8 Jul 2019 16:49:55 +0200 Subject: [PATCH] CI: use a wrapper script to generate coverage report --- .gitlab-ci.yml | 2 +- CI/otb_coverage.sh | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100755 CI/otb_coverage.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1c0357e127..5206c98317 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -227,7 +227,7 @@ ubuntu-xdk-qa-code-coverage: ctest -V -S CI/main_qa.cmake -DIMAGE_NAME:string=ubuntu-18.04-llvm-qa -DQA:BOOL=ON - - gcovr -x -o build/coverage_report.xml -r . --gcov-executable="llvm-cov gcov" build + - ./CI/otb_coverage.sh - saxon-xslt -o build/ctest_report.xml build/Testing/`head -n 1 build/Testing/TAG`/Test.xml CI/ctest2junit.xsl diff --git a/CI/otb_coverage.sh b/CI/otb_coverage.sh new file mode 100755 index 0000000000..8c9a194949 --- /dev/null +++ b/CI/otb_coverage.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# usage : call CI/otb_coverage.sh from source dir +OTB_DIR="$(dirname $0)/.." +OTB_DIR="$(readlink -f $OTB_DIR)" + +if [ -z "$BUILD_DIR" ]; then +BUILD_DIR=${OTB_DIR}/build +fi + +cd $BUILD_DIR +mkdir cov_filter + +echo Generating gcov reports in $BUILD_DIR ... +find $BUILD_DIR -name "*.gcda" -exec llvm-cov gcov -p '{}' > /dev/null \; +find . -maxdepth 1 -regex '.*#Modules#[a-zA-Z0-9]+#[a-zA-Z0-9]+#\(include\|src\|app\)#.*\.gcov' -exec mv '{}' cov_filter \; +rm *.gcov +cd $OTB_DIR + +echo Filtered $(ls $BUILD_DIR/cov_filter | wc -l) gcov reports + +echo Generating $BUILD_DIR/coverage_report.xml ... + +gcovr -r $OTB_DIR -x -g --object-directory=$BUILD_DIR/cov_filter > $BUILD_DIR/coverage_report.xml -- GitLab