[tox] envlist = py34,py27,pep8,checkbuild,checklinks minversion = 1.6 skipsdist = True [testenv] setenv = VIRTUAL_ENV={envdir} usedevelop = True install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -U {opts} {packages} deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = find ./trove -type f -name "*.pyc" -delete {envpython} run_tests.py python setup.py testr --slowest {envpython} generate_examples.py whitelist_externals = bash find [tox:jenkins] sitepackages = True [testenv:pep8] commands = flake8 # Check that .po and .pot files are valid: bash -c "find trove -type f -regex '.*\.pot?' -print0 | \ xargs -0 -n 1 msgfmt --check-format -o /dev/null" [testenv:py34] commands = rm -f .testrepository/times.dbm ostestr --blacklist_file=blacklist-py3.txt --serial whitelist_externals = rm [testenv:debug] commands = oslo_debug_helper {posargs} [testenv:cover] basepython = python2.7 commands = coverage erase python setup.py testr --coverage coverage run -a run_tests.py coverage html coverage xml coverage report [testenv:venv] commands = {posargs} [flake8] show-source = True # H301 is ignored on purpose. # The rest of the ignores are TODOs. ignore = F821,H237,H238,H301,H404,H405,H501 builtins = _ exclude=.venv,.tox,.git,dist,doc,openstack,*egg,tools,etc,build,*.po,*.pot filename=*.py,trove-* [testenv:api-ref] # This environment is called from CI scripts to test and publish # the API Ref to developer.openstack.org. commands = rm -rf api-ref/build sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html whitelist_externals = rm [testenv:releasenotes] commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html [testenv:bandit] commands = bandit -r trove -n5 -x tests [testenv:install-guide] commands = sphinx-build -a -E -W -d install-guide/build/doctrees -b html install-guide/source install-guide/build/html