Colleen Murphy d381514873 Add py36 tox environment
We already run python3.6 unit tests in CI. Add the py36 environment to
the tox file so that developers with python3.6 available locally can opt
into running that version too.

Change-Id: Ic7aad3d4adfafba226d3b1d1b2106d55135ce6ff
2018-11-06 12:56:44 +01:00

90 lines
2.3 KiB
INI

[tox]
minversion = 2.0
skipsdist = True
envlist = py36,py35,py27,pep8,releasenotes
[testenv]
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
OS_STDOUT_CAPTURE=1
OS_STDERR_CAPTURE=1
OS_TEST_TIMEOUT=60
TESTS_DIR=./keystonemiddleware/tests/unit/
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}
[testenv:pep8]
basepython = python3
commands =
flake8
bandit -r keystonemiddleware -x tests -n5
[testenv:bandit]
basepython = python3
# NOTE(browne): This is required for the integration test job of the bandit
# project. Please do not remove.
commands = bandit -r keystonemiddleware -x tests -n5
[testenv:venv]
basepython = python3
commands = {posargs}
[testenv:cover]
basepython = python3
setenv =
{[testenv]setenv}
PYTHON=coverage run --source keystonemiddleware --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:debug]
basepython = python3
commands = oslo_debug_helper -t keystonemiddleware/tests {posargs}
[flake8]
# D100: Missing docstring in public module
# D101: Missing docstring in public class
# D102: Missing docstring in public method
# D103: Missing docstring in public function
# D104: Missing docstring in public package
# D203: 1 blank line required before class docstring (deprecated in pep257)
ignore = D100,D101,D102,D103,D104,D203
show-source = True
exclude = .venv,.tox,dist,doc,*egg,build
[testenv:docs]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands=
doc8 doc/source
sphinx-build -W -b html doc/source doc/build/html
[testenv:releasenotes]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[hacking]
import_exceptions =
keystonemiddleware.i18n
[doc8]
extensions = .rst, .yaml
# lines should not be longer than 79 characters.
max-line-length = 79
[testenv:lower-constraints]
basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt