Convert a CppCheck XML report to a GitLab-compatible Code Quality JSON report
Project description
cppcheck-codequality
About
I wanted reports from CppCheck to appear in GitLab Merge Requests as Code Quality reports, which is a JSON file defined by the Code Climate team/service.
That's all this does: convert CppCheck XML to Code Climate JSON.
Usage
Install with PIP (note the underscore here):
python3 -m pip install -U cppcheck_codequality
It is primarily used as a console script. As such, ensure you have Python 3's "scripts" directory in your PATH
variable.
For example, on Linux, that might be $HOME/.local/bin
.
To test, try the --help
or --version
flags (note the dash here, instead of underscore):
cppcheck-codequality --help
CppCheck already has a script to convert its XML report to HTML for easy human reading. See "Chapter 11 HTML Report" in the CppCheck Manual
This script follows that example and provides similar command-line options. So usage is as follows:
# Generate CppCheck report as XML
cppcheck --xml --enable=warning,style,performance ./my_src_dir/ 2> cppcheck_out.xml
# Convert to a Code Climate JSON report
cppcheck-codequality --input-file=cppcheck_out.xml --output-file=cppcheck.json
OR, you could invoke the script directly, as a module, like this:
# Run as a module instead (note the underscore in the module name here)
python -m cppcheck_codequality --input-file=cppcheck_out.xml --output-file=cppcheck.json
Now, in your GitLab CI script, upload this file as a Code Quality report.
my-code-quality:
script:
- [...]
artifacts:
reports:
codequality: cppcheck.json
Contributing
Credits & Trademarks
CppCheck is an open-source project with a GPL v3.0 license.
"Code Climate" may be a registered trademark of Code Climate, Inc. which provides super-cool free and paid services to the developer community.
"GitLab" is a trademark of GitLab B.V.
All other trademarks belong to their respective owners.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cppcheck_codequality-1.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fae1d5247ca76378d23f5707650ec6850df99cc9e76bb2f2a85251f8dfd0c182 |
|
MD5 | edf8f3a54d532dba99fd0717fefafefd |
|
BLAKE2b-256 | 34e4c0798da148eb5682a74e289d9ecd21f7a4b75518b62aa240e03a17ce6e0a |
Hashes for cppcheck_codequality-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 334455c323b3cf8960fe0590688456b050c8ebec596d0c62b8c4099fff6f3101 |
|
MD5 | f3453e0c23e7b605dcca60f61511ace2 |
|
BLAKE2b-256 | 5cac9e88351bea47c172c942c24a15fdb75d7a72678ec2db1bea54740cf438c8 |