Skip to content
Snippets Groups Projects
Commit 6647f4c7 authored by Benjamin Hättasch's avatar Benjamin Hättasch
Browse files

Add linting to CI pipeline

parent 3984e086
Branches
No related tags found
1 merge request!179Code quality improvements
...@@ -20,6 +20,10 @@ before_script: ...@@ -20,6 +20,10 @@ before_script:
- apt-get -qq install -y python3-virtualenv python3 python3-dev python3-pip gettext default-mysql-client default-libmysqlclient-dev - apt-get -qq install -y python3-virtualenv python3 python3-dev python3-pip gettext default-mysql-client default-libmysqlclient-dev
- export DJANGO_SETTINGS_MODULE=AKPlanning.settings_ci - export DJANGO_SETTINGS_MODULE=AKPlanning.settings_ci
- ./Utils/setup.sh --prod - ./Utils/setup.sh --prod
- mkdir -p public/badges public/lint
- echo undefined > public/badges/$CI_JOB_NAME.score
- source venv/bin/activate
- pip install pylint-gitlab
- mysql --version - mysql --version
check: check:
...@@ -48,3 +52,32 @@ test: ...@@ -48,3 +52,32 @@ test:
coverage_format: cobertura coverage_format: cobertura
path: coverage.xml path: coverage.xml
junit: unit.xml junit: unit.xml
lint:
stage: test
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:
- |
echo "Linting score: $(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:
- main
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment