Regarding this action, it seems that it can be quite inefficient to workaround, especially since much of the tests and code-coverage can be already processed in other workflows.
Instead it would be good to document more modern approaches using CMake
:
- CMake guarantees there is a clean configure/build/test everytime, so the
build-wrapper
is unnecessary. Usingcompile_commands.json
is sufficient compile_commands.json
can be enabled in the CMake preset as:CMAKE_EXPORT_COMPILE_COMMANDS
- Use
upload_artifact
/download_artifact
to get and combine the previous test and coverage runs
Additional unclear settings:
- It is often useful to combine the project based on different OS that were used in the CI. It is unclear how one would set that up
- For coverage it is also desirable to split the coverage for
unit
/functional
/intergration
tests that are flagged accordingly
Currently the main issue with sonarsource/sonarcloud-github-action
is that it is run in a docker environment, but if the volume is mounted properly, it can execute just as well.