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
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:
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. A typical workflow might look like this:
# 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
If you wanted, 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
File details
Details for the file cppcheck_codequality-1.4.1.tar.gz
.
File metadata
- Download URL: cppcheck_codequality-1.4.1.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.7.17 Linux/5.4.109+
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fef810e285f4126af8faad5472aa4356e1083bbd407fb263077a4081ecc1827 |
|
MD5 | cc0d4cd2bdeb6588cfb41fa0c5b2efb0 |
|
BLAKE2b-256 | bf7e2d906a23395a8e4cdc26cfba4e9ce8af5520de60f1aa2e8c933bc896994d |
File details
Details for the file cppcheck_codequality-1.4.1-py3-none-any.whl
.
File metadata
- Download URL: cppcheck_codequality-1.4.1-py3-none-any.whl
- Upload date:
- Size: 13.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.7.17 Linux/5.4.109+
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbf4be8e93eacaaf45ad2eae7b59087fbd962e9ef93813fda24086fc94b8dd4d |
|
MD5 | 9fab13e495bf20603ec78f3b747fc45c |
|
BLAKE2b-256 | c7df344eb83165c8f6983725a0b5800b5da7eb214a96ac6acc338c5b10073eba |