%global _empty_manifest_terminate_build 0 Name: python-pylint-gitlab Version: 1.2.0 Release: 1 Summary: This project provides pylint formatters for a nice integration with GitLab CI. License: MIT URL: https://gitlab.com/smueller18/pylint-gitlab Source0: https://mirrors.nju.edu.cn/pypi/web/packages/78/a2/7a4dba9f516bc929caa038d87dfd4ea113a122244daa40eeed80e4ed3a2e/pylint-gitlab-1.2.0.tar.gz BuildArch: noarch Requires: python3-anybadge Requires: python3-astroid Requires: python3-dill Requires: python3-importlib-metadata Requires: python3-isort Requires: python3-jinja2 Requires: python3-lazy-object-proxy Requires: python3-markupsafe Requires: python3-mccabe Requires: python3-packaging Requires: python3-platformdirs Requires: python3-pylint Requires: python3-pyparsing Requires: python3-tomli Requires: python3-tomlkit Requires: python3-typing-extensions Requires: python3-wrapt Requires: python3-zipp %description # pylint-gitlab [](https://gitlab.com/smueller18/pylint-gitlab/commits/master) [](https://smueller18.gitlab.io/pylint-gitlab/coverage/) [](https://smueller18.gitlab.io/pylint-gitlab/lint/) [](https://pypi.org/project/pylint-gitlab/) This project provides pylint formatters for a nice integration with GitLab CI. | Formatter | Description | | --- | --- | | `GitlabCodeClimateReporter` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) | | `GitlabCodeClimateReporterNoHash` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) but without hashing the fingerprint. Needed to work with [nbQA](https://github.com/nbQA-dev/nbQA). | | `GitlabPagesHtmlReporter` | Creates a table in an HTML page with linting results and links to source code. | ## Usage Install package `pylint-gitlab`: ```sh pip install pylint-gitlab ``` The `pylint` package is a dependency of `pylint-gitlab` so it will be installed automatically. Now the formatters can be used by running `pylint` command and setting custom output formats with parameter `--output-format`. ```sh pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter . > codeclimate.json pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter . > pylint.html ``` Alternatively, you can load the `pylint_gitlab` plugin and then use the shortened `--output-format` names: ```sh pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-codeclimate . > codeclimate.json pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-pages-html . > pylint.html ``` ### GitLab CI integration Here is a minimalistic version for a `.gitlab-ci.yml` file: ```yaml pylint: stage: test image: python:3.7-slim before_script: - mkdir -p public/badges public/lint - echo undefined > public/badges/$CI_JOB_NAME.score - pip install pylint-gitlab script: - pylint --exit-zero --output-format=text $(find -type f -name "*.py" ! -path "**/.venv/**") | tee /tmp/pylint.txt - sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' /tmp/pylint.txt > public/badges/$CI_JOB_NAME.score - pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > codeclimate.json - pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > public/lint/index.html after_script: - anybadge --overwrite --label $CI_JOB_NAME --value=$(cat public/badges/$CI_JOB_NAME.score) --file=public/badges/$CI_JOB_NAME.svg 4=red 6=orange 8=yellow 10=green - | echo "Your score is: $(cat public/badges/$CI_JOB_NAME.score)" artifacts: paths: - public reports: codequality: codeclimate.json when: always pages: stage: deploy image: alpine:latest script: - echo artifacts: paths: - public only: refs: - master ``` You can then use the published badge for linting results. [](https://smueller18.gitlab.io/pylint-gitlab/lint/) ```markdown [](https://<MAIN_GROUP>.gitlab.io/<SUB_GROUP>/<PROJECT>/lint/) ``` %package -n python3-pylint-gitlab Summary: This project provides pylint formatters for a nice integration with GitLab CI. Provides: python-pylint-gitlab BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-pylint-gitlab # pylint-gitlab [](https://gitlab.com/smueller18/pylint-gitlab/commits/master) [](https://smueller18.gitlab.io/pylint-gitlab/coverage/) [](https://smueller18.gitlab.io/pylint-gitlab/lint/) [](https://pypi.org/project/pylint-gitlab/) This project provides pylint formatters for a nice integration with GitLab CI. | Formatter | Description | | --- | --- | | `GitlabCodeClimateReporter` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) | | `GitlabCodeClimateReporterNoHash` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) but without hashing the fingerprint. Needed to work with [nbQA](https://github.com/nbQA-dev/nbQA). | | `GitlabPagesHtmlReporter` | Creates a table in an HTML page with linting results and links to source code. | ## Usage Install package `pylint-gitlab`: ```sh pip install pylint-gitlab ``` The `pylint` package is a dependency of `pylint-gitlab` so it will be installed automatically. Now the formatters can be used by running `pylint` command and setting custom output formats with parameter `--output-format`. ```sh pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter . > codeclimate.json pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter . > pylint.html ``` Alternatively, you can load the `pylint_gitlab` plugin and then use the shortened `--output-format` names: ```sh pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-codeclimate . > codeclimate.json pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-pages-html . > pylint.html ``` ### GitLab CI integration Here is a minimalistic version for a `.gitlab-ci.yml` file: ```yaml pylint: stage: test image: python:3.7-slim before_script: - mkdir -p public/badges public/lint - echo undefined > public/badges/$CI_JOB_NAME.score - pip install pylint-gitlab script: - pylint --exit-zero --output-format=text $(find -type f -name "*.py" ! -path "**/.venv/**") | tee /tmp/pylint.txt - sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' /tmp/pylint.txt > public/badges/$CI_JOB_NAME.score - pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > codeclimate.json - pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > public/lint/index.html after_script: - anybadge --overwrite --label $CI_JOB_NAME --value=$(cat public/badges/$CI_JOB_NAME.score) --file=public/badges/$CI_JOB_NAME.svg 4=red 6=orange 8=yellow 10=green - | echo "Your score is: $(cat public/badges/$CI_JOB_NAME.score)" artifacts: paths: - public reports: codequality: codeclimate.json when: always pages: stage: deploy image: alpine:latest script: - echo artifacts: paths: - public only: refs: - master ``` You can then use the published badge for linting results. [](https://smueller18.gitlab.io/pylint-gitlab/lint/) ```markdown [](https://<MAIN_GROUP>.gitlab.io/<SUB_GROUP>/<PROJECT>/lint/) ``` %package help Summary: Development documents and examples for pylint-gitlab Provides: python3-pylint-gitlab-doc %description help # pylint-gitlab [](https://gitlab.com/smueller18/pylint-gitlab/commits/master) [](https://smueller18.gitlab.io/pylint-gitlab/coverage/) [](https://smueller18.gitlab.io/pylint-gitlab/lint/) [](https://pypi.org/project/pylint-gitlab/) This project provides pylint formatters for a nice integration with GitLab CI. | Formatter | Description | | --- | --- | | `GitlabCodeClimateReporter` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) | | `GitlabCodeClimateReporterNoHash` | Maps the linting result in [Code Climate format](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) but without hashing the fingerprint. Needed to work with [nbQA](https://github.com/nbQA-dev/nbQA). | | `GitlabPagesHtmlReporter` | Creates a table in an HTML page with linting results and links to source code. | ## Usage Install package `pylint-gitlab`: ```sh pip install pylint-gitlab ``` The `pylint` package is a dependency of `pylint-gitlab` so it will be installed automatically. Now the formatters can be used by running `pylint` command and setting custom output formats with parameter `--output-format`. ```sh pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter . > codeclimate.json pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter . > pylint.html ``` Alternatively, you can load the `pylint_gitlab` plugin and then use the shortened `--output-format` names: ```sh pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-codeclimate . > codeclimate.json pylint --exit-zero --load-plugins=pylint_gitlab --output-format=gitlab-pages-html . > pylint.html ``` ### GitLab CI integration Here is a minimalistic version for a `.gitlab-ci.yml` file: ```yaml pylint: stage: test image: python:3.7-slim before_script: - mkdir -p public/badges public/lint - echo undefined > public/badges/$CI_JOB_NAME.score - pip install pylint-gitlab script: - pylint --exit-zero --output-format=text $(find -type f -name "*.py" ! -path "**/.venv/**") | tee /tmp/pylint.txt - sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' /tmp/pylint.txt > public/badges/$CI_JOB_NAME.score - pylint --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > codeclimate.json - pylint --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter $(find -type f -name "*.py" ! -path "**/.venv/**") > public/lint/index.html after_script: - anybadge --overwrite --label $CI_JOB_NAME --value=$(cat public/badges/$CI_JOB_NAME.score) --file=public/badges/$CI_JOB_NAME.svg 4=red 6=orange 8=yellow 10=green - | echo "Your score is: $(cat public/badges/$CI_JOB_NAME.score)" artifacts: paths: - public reports: codequality: codeclimate.json when: always pages: stage: deploy image: alpine:latest script: - echo artifacts: paths: - public only: refs: - master ``` You can then use the published badge for linting results. [](https://smueller18.gitlab.io/pylint-gitlab/lint/) ```markdown [](https://<MAIN_GROUP>.gitlab.io/<SUB_GROUP>/<PROJECT>/lint/) ``` %prep %autosetup -n pylint-gitlab-1.2.0 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-pylint-gitlab -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Sun Apr 23 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.0-1 - Package Spec generated