如何解决PyLint在GitLab上不起作用Python 3.X
我在gitlab上遇到Pylint的问题。由于某种原因,它在分析代码的过程中崩溃。 但是我什么也没说,只是崩溃了。。
以下是一些日志:
core/db/sql/pgsql/__init__.py:162:8: E1101: Instance of 'Session' has no 'close' member (no-member)
/core/db/sql/pgsql/__init__.py:165:4: C0116: Missing function or method docstring (missing-function-docstring)
/core/db/sql/pgsql/__init__.py:166:8: E1101: Instance of 'Session' has no 'commit' member (no-member)
/core/db/sql/pgsql/__init__.py:168:4: C0116: Missing function or method docstring (missing-function-docstring)
/core/db/sql/pgsql/__init__.py:169:8: E1101: Instance of 'Session' has no 'rollback' member (no-member)
/core/db/sql/pgsql/__init__.py:171:4: C0116: Missing function or method docstring (missing-function-docstring)
/core/db/sql/pgsql/__init__.py:174:4: C0116: Missing function or method docstring (missing-function-docstring)/bin/bash: line 98: 43 Segmentation fault (core dumped) pylint /
44 Done | tee ./pylint/pylint.log
The following messages were raised:
- fatal message issued
- error message issued
- refactor message issued
Fatal messages detected. Failing...
Running after_script
00:02
196
Uploading artifacts for failed job
00:02
198 ERROR: Job failed: exit code 1
这是.gitlab-cy.yml配置文件:
image: "python:3.8.5"
# Change pip's cache directory to be inside the project directory since we can
# only cache local items.
variables:
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache"
cache:
paths:
- .cache/pip
- venv/
before_script:
- python --version
- pip install virtualenv
- virtualenv venv
- source venv/bin/activate
- pip install -r requirements.txt
stages:
- Static Analysis
- Test
flake8:
stage: Static Analysis
script:
- flake8 project/
pylint:
stage: Static Analysis
script:
- mkdir ./pylint
- pylint project/ | tee ./pylint/pylint.log || pylint-exit $?
- PYLINT_SCORE=$(sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' ./pylint/pylint.log)
- anybadge --label=Pylint --file=pylint/pylint.svg --value=$PYLINT_SCORE 2=red 4=orange 8=yellow 10=green
- echo "Pylint score is $PYLINT_SCORE"
artifacts:
paths:
- ./pylint/
coverage:
stage: Test
script:
- coverage erase
- $(coverage run -m unittest discover -s tests | tee cov.log || exit 0)
- coverage report -m
coverage: '/TOTAL.+ ([0-9]{1,3}%)/'
artifacts:
paths:
- ./pylint/
when: always
有了这个错误代码,我在网上什么都没找到。 而且我在gitlab上还有其他具有相同配置的项目,它们可以毫无问题地运行。
有人看过吗?
谢谢!
解决方法
我看不到您如何执行pylint。请提供您的gitlab-ci.yml
文件。但是我遇到了非常类似的问题,并通过添加pylint-exit库来解决了这个问题:
pylint --disable=W0611,C0411,C0301 tests > ./pylint/tests.log || pylint-exit $?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。