shade/tox.ini
Doug Hellmann c12ebc16e8 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: I972721cf714d811a427ee6a860b0c18c9920c8bc
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-06-06 15:27:01 -04:00

111 lines
3.3 KiB
INI

[tox]
minversion = 1.6
envlist = py35,py27,pep8
skipsdist = True
[testenv]
usedevelop = True
passenv = UPPER_CONSTRAINTS_FILE
install_command = pip install -U {opts} {packages}
setenv =
VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ALL=C
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = stestr run {posargs}
stestr slowest
[testenv:functional]
basepython = {env:SHADE_TOX_PYTHON:python2}
passenv = OS_* SHADE_* UPPER_CONSTRAINTS_FILE
commands = stestr --test-path ./shade/tests/functional run --serial {posargs}
stestr slowest
[testenv:pep8]
basepython = python3
usedevelop = False
skip_install = True
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
doc8
hacking
pygments
commands =
doc8 doc/source
flake8 shade
[testenv:venv]
basepython = python3
commands = {posargs}
[testenv:debug]
basepython = python3
whitelist_externals = find
commands =
find . -type f -name "*.pyc" -delete
oslo_debug_helper {posargs}
[testenv:cover]
basepython = python3
setenv =
{[testenv]setenv}
PYTHON=coverage run --source shade --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:ansible]
basepython = python3
# Need to pass some env vars for the Ansible playbooks
passenv = HOME USER
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
ansible<=2.5
commands = {toxinidir}/extras/run-ansible-tests.sh -e {envdir} {posargs}
[testenv:docs]
basepython = python3
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -W -d doc/build/doctrees -b html doc/source/ doc/build/html
[testenv:releasenotes]
basepython = python3
skip_install = True
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[flake8]
# The following are ignored on purpose - please do not submit patches to "fix"
# without first verifying with a core that fixing them is non-disruptive.
# H103 Is about the Apache license. It's strangely strict about the use of
# single vs double quotes in the license text. Fixing is not worth it
# H306 Is about alphabetical imports - there's a lot to fix
# H4 Are about docstrings - and there's just too many of them to fix
# W503 Is supposed to be off by default but a bug has it on by default. It's
# also a categorially terrible idea and Donald Knuth agrees with me.
ignore = H103,H306,H4,W503
show-source = True
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
[testenv:lower-constraints]
basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt