[tox] minversion = 3.18.0 envlist = py36,py39,pep8 skipsdist = True ignore_basepython_conflict = True [testenv] basepython = python3 usedevelop = True setenv = VIRTUAL_ENV={envdir} allowlist_externals = * deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = stestr run --slowest {posargs} [testenv:pep8] commands = flake8 [testenv:docs] deps = -r{toxinidir}/doc/requirements.txt commands = sphinx-build -a -W -E -b html doc/source doc/build/html [testenv:pdf-docs] deps = {[testenv:docs]deps} allowlist_externals = make commands = sphinx-build -W -b latex doc/source doc/build/pdf make -C doc/build/pdf [testenv:venv] commands = {posargs} [testenv:cover] setenv = PYTHON=coverage run --source bashate --parallel-mode commands = coverage erase find . -type f -name "*.pyc" -delete stestr --test-path ./bashate/tests run {posargs} coverage combine coverage html -d cover coverage xml -o cover/coverage.xml coverage report [testenv:releasenotes] deps = {[testenv:docs]deps} commands = sphinx-build -a -W -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html [flake8] # E123, E125 skipped as they are invalid PEP-8. show-source = True ignore = E123,E125,W504 builtins = _ exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build # This environment can be used to quickly validate that all needed system # packages required to successfully execute test targets are installed [testenv:bindep] # Do not install any requirements. We want this to be fast and work even if # system dependencies are missing, since it's used to tell you what system # dependencies are missing! This also means that bindep must be installed # separately, outside of the requirements files. deps = bindep commands = bindep test