coverage2sql/tox.ini
Doug Hellmann f5a1c60493 fix tox python3 overrides
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.

We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.

We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.

Change-Id: I66d77a977b76118d3a7b74f1f5b238370b43a38d
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-09-26 18:47:47 -04:00

75 lines
2.1 KiB
INI

[tox]
minversion = 2.0
envlist = py{36,35,27,py},pep8,pip-check-reqs
skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -U --force-reinstall {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
whitelist_externals = find
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
find . -type f -name "*.pyc" -delete
stestr run {posargs}
[testenv:pep8]
basepython = python3
sitepackages = False
commands =
flake8 {posargs}
[testenv:venv]
basepython = python3
commands = {posargs}
[testenv:cover]
basepython = python3
setenv =
{[testenv]setenv}
PYTHON=coverage run --source coverage2sql --parallel-mode
commands =
coverage erase
find . -type f -name "*.pyc" -delete
stestr --test-path ./coverage2sql/tests run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
coverage report
[testenv:docs]
basepython = python3
commands = python setup.py build_sphinx
[testenv:debug]
commands = oslo_debug_helper {posargs}
[testenv:releasenotes]
basepython = python3
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[flake8]
# E123 skipped because it is ignored by default in the default pep8
# E125 is deliberately excluded. See https://github.com/jcrocholl/pep8/issues/126
# E129 skipped because it is too limiting when combined with other rules
# E711 skipped because sqlalchemy filter() requires using == instead of is
show-source = True
ignore = E123,E125,E129,E711
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,releasenotes
[testenv:pip-check-reqs]
# Do not install test-requirements as that will pollute the virtualenv for
# determining missing packages.
# This also means that pip-check-reqs must be installed separately, outside
# of the requirements.txt files
deps = pip_check_reqs
-r{toxinidir}/requirements.txt
commands=
pip-extra-reqs -d --ignore-file=coverage2sql/tests/* coverage2sql
pip-missing-reqs -d --ignore-file=coverage2sql/tests/* coverage2sql