[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 = python setup.py testr --slowest --testr-args='{posargs}'

[tox:jenkins]
sitepackages = True
downloadcache = ~/cache/pip

[testenv:pep8]
deps=
  pep8==1.3.3
  pyflakes
commands =
  python tools/hacking.py --doctest
  python tools/hacking.py --ignore=E12,E711,E721,E712,N403,N404 --show-source \
    --exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg .
  python tools/hacking.py --ignore=E12,E711,E721,E712,N403,N404 --show-source \
    --filename=nova* bin
  bash tools/unused_imports.sh

[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]
# Also do not run test_coverage_ext tests while gathering coverage as those
# tests conflict with coverage.
commands =
  python setup.py testr --coverage \
    --testr-args='^(?!.*test.*coverage).*$'

[testenv:venv]
commands = {posargs}