0

I'm having a problem with Pylint on gitlab. For some reason, it crashes on the middle of the process of analysing the code.. But doesn't say nothing to me, only crashes..

Here are some log:

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

Here are the .gitlab-cy.yml configuration file:

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

With this erros codes, I didn't find nothing on web.. And I have others projects on gitlab with the same configuration, and they run without any problem.

Does anyone already seen this?

Thanks!!

1 Answers1

1

I do not see how are you executing the pylint. Please provide your gitlab-ci.yml file. But I had the very similar problem and I solved it by adding pylint-exit library:

pylint --disable=W0611,C0411,C0301 tests > ./pylint/tests.log || pylint-exit $? 
Dharman
  • 30,962
  • 25
  • 85
  • 135
dubaksk
  • 91
  • 2
  • 10
  • Hi, I've edited the question and inserted the yml code. For some reasons, when I take out the the opencv library from the requeriments, it works. I'm using this versions of opencv (opencv-python==4.4.0.44 opencv-contrib-python==4.4.0.44) – Lucas Gomes Dec 11 '20 at 13:47
  • First try to run it without using venv inside Gitlab CI/CD process. Locally on your development notebook I do the same, but inside Gitlab deamon it is not necessary to isolate the environment. Also please provide the content of the requirements.txt file. – dubaksk Dec 15 '20 at 08:15