From bb3281d4894d63c12e0101c48657b3763d92eb6a Mon Sep 17 00:00:00 2001 From: Jason Robinson Date: Mon, 23 Jul 2018 19:03:49 +0300 Subject: [PATCH] Add tox and gitlab CI --- .coveragerc | 1 + .gitlab-ci.yml | 30 ++++++++++++++++++++++++++++++ dev-requirements.txt | 1 + tox.ini | 17 +++++++++++++++++ 4 files changed, 49 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 tox.ini diff --git a/.coveragerc b/.coveragerc index e5c28b1..1e1f315 100644 --- a/.coveragerc +++ b/.coveragerc @@ -3,3 +3,4 @@ omit = setup.py federation/__init__.py */tests/* + .tox/* diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..52a196a --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,30 @@ +# This file is a template, and might need editing before it works on your project. +# Official language image. Look for the different tagged releases at: +# https://hub.docker.com/r/library/python/tags/ +image: python:3.6 + +# 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" + +# Pip's cache doesn't store the python packages +# https://pip.pypa.io/en/stable/reference/pip_install/#caching +# +# If you want to also cache the installed packages, you have to install +# them in a virtualenv and cache it as well. +cache: + paths: + - .cache/pip + - venv/ + +before_script: + - python -V + - pip install virtualenv + - virtualenv venv + - source venv/bin/activate + +test: + script: + - pip install tox + - tox diff --git a/dev-requirements.txt b/dev-requirements.txt index 97be938..a6a93a4 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -10,6 +10,7 @@ codecov coverage pytest-cov pytest-warnings +tox # Docs sphinx diff --git a/tox.ini b/tox.ini new file mode 100644 index 0000000..6d90715 --- /dev/null +++ b/tox.ini @@ -0,0 +1,17 @@ +# tox (https://tox.readthedocs.io/) is a tool for running tests +# in multiple virtualenvs. This configuration file will run the +# test suite on all supported python versions. To use it, "pip install tox" +# and then run "tox" from this directory. + +[tox] +envlist = py36 + +[testenv] +usedevelop = True + +deps = -rdev-requirements.txt + +commands = + pip freeze + pytest --cov=./ + #codecov