[tox] minversion = 3.1.1 skipsdist = True envlist = py36,py38,pep8,pypy ignore_basepython_conflict = True [testenv] basepython = python3 usedevelop = True deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = stestr run --slowest {posargs} [testenv:py35] deps = -c{toxinidir}/py35-upper-constraints.txt -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt [testenv:integration] whitelist_externals = bash commands = bash integration-test/test.sh {posargs} [testenv:cover] setenv = PYTHON=coverage run --source hacking --parallel-mode commands = stestr run {posargs} coverage combine coverage html -d cover coverage xml -o cover/coverage.xml [testenv:docs] deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/doc/requirements.txt commands = sphinx-build -W -b html doc/source doc/build/html [testenv:releasenotes] deps = {[testenv:docs]deps} commands = sphinx-build -W -b html releasenotes/source releasenotes/build/html [testenv:venv] commands = {posargs} [testenv:pep8] commands = flake8 {posargs} [flake8] exclude = .venv,.tox,dist,doc,*.egg,build show-source = true enable-extensions = H106 [hacking] local-check = hacking.tests.test_local.check [testenv:lower-constraints] deps = -c{toxinidir}/lower-constraints.txt -r{toxinidir}/test-requirements.txt -r{toxinidir}/requirements.txt