823e1992b4
Otherwise we have tests that rely on ordering (for example the one fixed in this patchset). Note that this moves the hash seed setting to only be used in docs and venv tox targets. For some reason there is an issue in the tooling used by the docs build that tickles a bug in those tools. Tools which are not part of Ceilometer. To avoid tickling the problem and to move ceilometer along on this bug, we're just going to mask that. The venv target is used by the jenkins job that builds docs. It runs the same build_sphinx setup.py target that the docs target does. Change-Id: If93ec7934ad59515b821f056ca534d3676ee7e03 Closes-Bug: #1348818
104 lines
3.1 KiB
INI
104 lines
3.1 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = py27,py33,py34,py-mysql,py-pgsql,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}
|
|
EVENTLET_NO_GREENDNS=yes
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mongodb.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
downloadcache = {toxworkdir}/_download
|
|
whitelist_externals = bash
|
|
|
|
[testenv:py-mysql]
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mysql.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:py-pgsql]
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-postgresql.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:py-elastic]
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-elastic.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:py33]
|
|
deps = -r{toxinidir}/requirements-py3.txt
|
|
-r{toxinidir}/test-requirements-py3.txt
|
|
commands = python -m testtools.run \
|
|
ceilometer.tests.test_utils
|
|
|
|
[testenv:py34]
|
|
deps = -r{toxinidir}/requirements-py3.txt
|
|
-r{toxinidir}/test-requirements-py3.txt
|
|
commands = python -m testtools.run \
|
|
ceilometer.tests.test_utils
|
|
|
|
# NOTE(chdent): The gabbi tests are also run under the primary tox
|
|
# targets. This target simply provides a target to directly run just
|
|
# gabbi tests without needing to discovery across the entire body of
|
|
# tests.
|
|
[testenv:gabbi]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/gabbi
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mongodb.sh \
|
|
python setup.py testr --testr-args="{posargs}"
|
|
|
|
|
|
[testenv:cover]
|
|
commands = bash -x {toxinidir}/setup-test-env-mongodb.sh python setup.py testr --slowest --coverage --testr-args="{posargs}"
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8
|
|
# Check that .po and .pot files are valid:
|
|
bash -c "find ceilometer -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
|
|
|
|
[testenv:genconfig]
|
|
commands =
|
|
oslo-config-generator --output-file etc/ceilometer/ceilometer.conf \
|
|
--namespace ceilometer \
|
|
--namespace oslo.concurrency \
|
|
--namespace oslo.db \
|
|
--namespace oslo.messaging \
|
|
--namespace oslo.policy \
|
|
--namespace keystonemiddleware.auth_token
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
setenv = PYTHONHASHSEED=0
|
|
|
|
[testenv:pylint]
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
setenv = PYTHONHASHSEED=0
|
|
|
|
[testenv:debug]
|
|
commands = bash -x {toxinidir}/setup-test-env-mongodb.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-mysql]
|
|
commands = bash -x {toxinidir}/setup-test-env-mysql.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-pgsql]
|
|
commands = bash -x {toxinidir}/setup-test-env-postgresql.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-elastic]
|
|
commands = bash -x {toxinidir}/setup-test-env-elastic.sh oslo_debug_helper {posargs}
|
|
|
|
[flake8]
|
|
ignore =
|
|
exclude=.venv,.git,.tox,dist,doc,./ceilometer/openstack/common,*lib/python*,*egg,nova_tests,build,tools/lintstack.head.py
|
|
show-source = True
|
|
|
|
[hacking]
|
|
import_exceptions =
|
|
ceilometer.i18n
|
|
local-check-factory = ceilometer.hacking.checks.factory
|