[tox] envlist = py26,py27,pep8 [testenv] setenv = VIRTUAL_ENV={envdir} LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=C deps = -r{toxinidir}/tools/pip-requires -r{toxinidir}/tools/test-requires commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi' bash -c 'testr run --parallel {posargs} ; RET=$? ; echo "Slowest Tests" ; testr slowest && exit $RET' [tox:jenkins] sitepackages = True downloadcache = ~/cache/pip [testenv:pep8] deps=pep8==1.3.3 commands = python tools/hacking.py --ignore=N402,E12,E711,E721,E712 --repeat --show-source \ --exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg . python tools/hacking.py --ignore=N402,E12,E711,E721,E712 --repeat --show-source \ --filename=nova* bin [testenv:pylint] setenv = VIRTUAL_ENV={envdir} deps = -r{toxinidir}/tools/pip-requires pylint==0.26.0 commands = bash tools/lintstack.sh [testenv:pyflakes] deps = pyflakes commands = python tools/flakes.py nova [testenv:cover] # Need to omit DynamicallyCompiledCheetahTemplate.py from coverage because # it ceases to exist post test run. Also do not run test_coverage_ext tests # while gathering coverage as those tests conflict with coverage. setenv = OMIT=--omit=DynamicallyCompiledCheetahTemplate.py PYTHON=coverage run --source nova --parallel-mode commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi' bash -c 'testr run --parallel \^\(\?\!\.\*test_coverage_ext\)\.\*\$ ; RET=$? ; coverage combine ; coverage html -d ./cover $OMIT && exit $RET' [testenv:venv] commands = {posargs}