Skip to main content

Simple script to generate gitlab code quality report from output of pydocstyle.

Project description

GitLab CI PyPI - Python Version PyPI - License PyPI PyPI - Downloads

pydocstyle-gitlab-code-quality

Generate GitLab Code Quality report from an output of pydocstyle.

Usage

# passing pydocstyle output through stdin (output printed to stdout)
pydocstyle main.py | pydocstyle-gitlab-code-quality > codequality.json
# or
pydocstyle-gitlab-code-quality < pydocstyle_out.txt > codequality.json

# using CLI flags (output printed directly to a file)
pydocstyle-gitlab-code-quality --input pydocstyle_out.txt --output codequality.json

CLI configuration

pydocstyle-gitlab-code-quality allows for the following CLI arguments:

flag example default description
--minor <CODE>... --minor=D100,D101 empty Error codes to be displayed with MINOR severity.
--major <CODE>... --major=D102,D103 empty Error codes to be displayed with MAJOR severity.
--critical <CODE>... --critical=D104,D105 empty Error codes to be displayed with CRITICAL severity.
-i, --ignore <CODE>... --ignore=D106,D107 empty Error codes to be omitted from Code Quality report.
-f, --file, --input <FILE> -f pydocstyle_out.txt empty Path to the file with pydocstyle output.
-o, --output <FILE> -o codequality.json empty Path to the file where the Code Quality report will be saved.
--no-stdout N/A False Do not print the Code Quality report to stdout.
--log-file <FILE> --log-file latest.log pgcq_latest.log Path to the file where the log will be saved.
--enable-logging N/A False Enable logging to a file. For debugging purposes only.

By default, all error codes are reported with INFO severity.

In case the same error code from pydocstyle has been provided to many severity options, the highest severity level takes precedence.

Example .gitlab-ci.yml file

image: python:alpine
variables:
  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"

cache:
  paths:
    - .cache/pip/
    - venv/

before_script:
  - python --version  # For debugging
  - python -m venv venv
  - . venv/bin/activate

codequality:
  script:
    - pip install pydocstyle pydocstyle-gitlab-code-quality
    - pydocstyle program.py > pydocstyle-out.txt
    - pydocstyle-gitlab-code-quality --input pydocstyle-out.txt --output codequality.json
  artifacts:
    when: always
    reports:
      codequality: codequality.json
  allow_failure: true

Credits

This script was inspired by mypy-gitlab-code-quality. Thanks!

License

The project is licensed under MIT - a free and open-source license. For more information, please see the license file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydocstyle-gitlab-code-quality-0.1.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file pydocstyle-gitlab-code-quality-0.1.0.tar.gz.

File metadata

File hashes

Hashes for pydocstyle-gitlab-code-quality-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7f84e756e77c8a6d0aa03e0c751e646578e2ad7e341652117654b89bf210e0cb
MD5 0b0a0d3c34048b5305e87d01b81cd98d
BLAKE2b-256 ea30e0847112a3d1df61a14dd3e5e1f26d1b9bd17818f86fb40ed31ebc427ef8

See more details on using hashes here.

File details

Details for the file pydocstyle_gitlab_code_quality-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pydocstyle_gitlab_code_quality-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 567e81245e88035207f5025d31d80ce8a20aeb6c575ace46e7f5c8b0fb84c851
MD5 4cdc71a3770beb34620b1bdeda9a7ca6
BLAKE2b-256 39df1d7f158fc0e2e9d326f2fc93f45b4c4257a0ee1cd2d35e6666e4a6e6c1cb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page