diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..2cdab1c --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,42 @@ +image: python:latest + +variables: + PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" + +cache: + paths: + - .cache/pip + - venv/ + +before_script: + - python --version + - pip install virtualenv + - virtualenv venv + - source venv/bin/activate + +black: + stage: test + script: + - pip install black + - make black + +flake8: + stage: test + script: + - pip install flake8 + - make flake8 + +pytest: + stage: test + script: + - pip install hypothesis pytest pytest-cov + - make check + coverage: '/TOTAL.*\s([.\d]+)%/' + artifacts: + when: always + reports: + junit: report.xml + coverage_report: + coverage_format: cobertura + path: coverage.xml + diff --git a/Makefile b/Makefile index 78d20ce..d79191d 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ check: - pytest -vvv --log-level debug --cov --cov-report=term-missing + pytest -vvv --log-level debug --cov --cov-report=term-missing --cov-report=xml:coverage.xml --junitxml=report.xml lint: black flake8 mypy