[tox] minversion = 2.0 envlist = cover,docs,pep8,py27,py37,pylint,update-states [testenv] setenv = # We need to install a bit more than just `test' because those drivers have # custom tests that we always run deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/test-requirements.txt -r{toxinidir}/requirements.txt commands = stestr run {posargs} [testenv:docs] basepython = python3 deps = {[testenv]deps} -r{toxinidir}/doc/requirements.txt commands = sphinx-build -E -W -b html doc/source doc/build/html doc8 doc/source [testenv:update-states] basepython = python3 deps = {[testenv]deps} pydot3 commands = {toxinidir}/tools/update_states.sh [testenv:pep8] basepython = python3 commands = flake8 {posargs} [testenv:pylint] basepython = python3 deps = {[testenv]deps} pylint==0.26.0 commands = pylint --rcfile=pylintrc taskflow [testenv:cover] basepython = python3 deps = {[testenv]deps} coverage>=3.6 setenv = {[testenv]setenv} PYTHON=coverage run --source taskflow --parallel-mode commands = stestr run {posargs} coverage combine coverage html -d cover coverage xml -o cover/coverage.xml [testenv:venv] basepython = python3 commands = {posargs} [flake8] builtins = _ exclude = .venv,.tox,dist,doc,*egg,.git,build,tools ignore = E721 [hacking] import_exceptions = six.moves taskflow.test.mock unittest.mock [doc8] # Settings for doc8: # Ignore doc/source/user/history.rst, it includes generated ChangeLog # file that fails with "D000 Inline emphasis start-string without # end-string." ignore-path = doc/*/target,doc/*/build* [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 [testenv:bindep] basepython = python3 # 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, and develop mode disabled # explicitly to avoid unnecessarily installing the checked-out repo too (this # further relies on "tox.skipsdist = True" above). deps = bindep commands = bindep test usedevelop = False [testenv:lower-constraints] basepython = python3 install_command = pip install {opts} {packages} deps = -c{toxinidir}/lower-constraints.txt .[test,workers,zookeeper,database,redis,eventlet]