diff --git a/.github/workflows/mc_dc_coverage.yml b/.github/workflows/mc_dc_coverage.yml index 2c4f4ccd..ad03cbe2 100644 --- a/.github/workflows/mc_dc_coverage.yml +++ b/.github/workflows/mc_dc_coverage.yml @@ -37,4 +37,68 @@ jobs: tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/ cd /tmp/libgpg-error-1.50 && ./configure && make install curl -LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2 -o /tmp/libgcrypt-1.11.0.tar.bz2 - tar -xjf /tmp/libgcrypt-1. + tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/ + cd /tmp/libgcrypt-1.11.0 && ./configure && make install + ldconfig + + - name: Fix Detached HEAD State + run: git checkout -B ${GITHUB_REF##*/} + + - name: Build with Coverage Flags + run: | + export CFLAGS="-fprofile-arcs -ftest-coverage -g" + bash ${GITHUB_WORKSPACE}/support/scripts/build_internal.sh + + - name: Generate Coverage Report and Badges + run: | + mkdir -p doc/coverage + gcovr --branches --xml-pretty --exclude-unreachable-branches -o doc/coverage/coverage_report.xml + gcovr --branches --html --html-details -o doc/coverage/coverage_report.html + + # Extract overall coverage metrics from the root tag + LINE_COVERAGE=$(grep -oP '(?<=