Resolve "CI: Simplify coverage scripts"

Merged Alberto Miranda requested to merge amiranda/252-ci-simplify-coverage-scripts into master

This MR simplifies coverage generation in the following ways:

  • Replaces the old scripts/ci/coverage.sh script with a new scripts/dev/coverage.py written in Python, making it more robust and simpler to modify if needed.
  • Adds specific CMake targets for generating coverage reports directly from CMake.
  • Adds specialized CMake presets to make it simpler to configure the different builds required to generate coverage information.
  • Replaces gcovr with lcov + lcov_cobertura, since gcovr exhibited some errors that were difficult to track down and lcov worked out of the box.
  • Adds HTML documentation about the coverage generation in docs/sphinx/devs/coverage.md

This MR also updates the v0.9.2 Docker images to update CMake and include coverage-related packages. The coverage image in particular is no longer needed and has been removed.

Closes #252 (closed) #256 (closed) #257 (closed) #258 (closed)

Edited by Alberto Miranda

Merge request reports