panko/tox.ini

125 lines
3.8 KiB
INI

[tox]
minversion = 1.6
skipsdist = True
envlist = py35,py27,pep8
[testenv]
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
install_command = pip install -U {opts} {packages}
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
OS_TEST_PATH=panko/tests/unit
# NOTE(tonyb): This project has chosen to *NOT* consume upper-constraints.txt
passenv = OS_TEST_TIMEOUT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE
commands =
{toxinidir}/tools/pretty_tox.sh "{posargs}"
oslo-config-generator --config-file=etc/panko/panko-config-generator.conf
whitelist_externals = bash
[testenv:py27-mongodb]
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run mongodb {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py35-mongodb]
basepython = python3.5
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run mongodb {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py27-mysql]
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run mysql {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py35-mysql]
basepython = python3.5
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run mysql {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py27-postgresql]
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run postgresql {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py35-postgresql]
basepython = python3.5
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run postgresql {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py27-elastic]
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run elasticsearch {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:py35-elastic]
setenv = OS_TEST_PATH=panko/tests/functional/
commands = pifpaf run elasticsearch {toxinidir}/tools/pretty_tox.sh "{posargs}"
# NOTE(chdent): The gabbi tests are also run under the other functional
# tox targets. This target simply provides a target to directly run just
# gabbi tests without needing to do discovery across the entire body of
# tests.
[testenv:gabbi]
setenv = OS_TEST_PATH=panko/tests/functional/gabbi
passenv = PANKO_*
commands = pifpaf run mongodb {toxinidir}/tools/pretty_tox.sh "{posargs}"
[testenv:cover]
setenv = OS_TEST_PATH=panko/tests
commands =
python setup.py testr --slowest --coverage --testr-args="{posargs}"
coverage report
[testenv:pep8]
deps = hacking<0.13,>=0.12.0
doc8
commands = flake8
doc8 {posargs}
[testenv:releasenotes]
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:genconfig]
commands = oslo-config-generator --config-file=etc/panko/panko-config-generator.conf
[testenv:genpolicy]
commands = oslopolicy-sample-generator --config-file=etc/panko/panko-policy-generator.conf
[testenv:docs]
commands = python setup.py build_sphinx
setenv = PYTHONHASHSEED=0
[testenv:venv]
commands = {posargs}
setenv = PYTHONHASHSEED=0
[testenv:debug]
commands = bash -x oslo_debug_helper {posargs}
[testenv:debug-mongodb]
setenv = OS_TEST_PATH=panko/tests/functional
commands = pifpaf --debug run mongodb oslo_debug_helper {posargs}
[testenv:debug-mysql]
setenv = OS_TEST_PATH=panko/tests/functional
commands = pifpaf --debug run mysql oslo_debug_helper {posargs}
[testenv:debug-pgsql]
setenv = OS_TEST_PATH=panko/tests/functional
commands = pifpaf --debug run postgresql oslo_debug_helper {posargs}
[testenv:debug-elastic]
setenv = OS_TEST_PATH=panko/tests/functional
commands = pifpaf --debug run elasticsearch oslo_debug_helper {posargs}
[doc8]
ignore = D000
ignore-path = .venv,.git,.tox,*panko/locale*,*lib/python*,panko.egg*,doc/build,doc/source/api,releasenotes/*
[flake8]
ignore =
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
show-source = True
[hacking]
import_exceptions =
panko.i18n
local-check-factory = panko.hacking.checks.factory