heat/tox.ini
Pavlo Shchelokovskyy f518cfe252 Add separate requirements.txt to integration tests
and use it during tox run. This should speed up the tox venv creation
somewhat, as the new requirements is shorter, thus less packages are
installed or C extensions compiled.

Also this is the first step to ease packaging of the integration tests
as a separate tool.

Change-Id: I914eb675e7f025e03a22719d5dff8ed741fbd37d
2015-04-01 09:02:13 +00:00

70 lines
2.0 KiB
INI

[tox]
envlist = py27,pep8
minversion = 1.6
skipsdist = True
[testenv]
# Note the hash seed is set to 0 until heat can be tested with a
# random hash seed successfully.
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
usedevelop = True
install_command = pip install {opts} {packages}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
find {toxinidir} -not -path '{toxinidir}/.tox/*' -name '*.pyc' -delete
python setup.py testr --slowest --testr-args='^(?!heat_integrationtests){posargs}'
whitelist_externals =
bash
find
[testenv:py27log]
commands =
find . -type f -name "*.pyc" -delete
bash tools/pretty_tox.sh '{posargs}'
[testenv:integration]
setenv = VIRTUAL_ENV={envdir}
TESTR_START_DIR=heat_integrationtests
usedevelop = False
deps = -r{toxinidir}/heat_integrationtests/requirements.txt
commands =
bash tools/pretty_tox.sh '--concurrency=1 ^heat_integrationtests.*{posargs}'
[testenv:pep8]
commands =
flake8 heat bin/heat-api bin/heat-api-cfn bin/heat-api-cloudwatch bin/heat-engine bin/heat-manage contrib heat_integrationtests
# Check that .po and .pot files are valid:
bash -c "find heat -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
[testenv:venv]
commands = {posargs}
[testenv:cover]
commands =
python setup.py testr --coverage --testr-args='^(?!heat_integrationtests){posargs}'
[testenv:docs]
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
sphinxcontrib-httpdomain
commands = python setup.py build_sphinx
[testenv:genconfig]
commands =
oslo-config-generator --config-file=config-generator.conf
oslo-config-generator --config-file=heat_integrationtests/config-generator.conf
[flake8]
# H404 multi line docstring should start with a summary
# H405 multi line docstring summary not separated with an empty line
ignore = H404,H405
show-source = true
exclude=.*,dist,*openstack/common*,*lib/python*,*egg,tools,build
max-complexity=20
[hacking]
import_exceptions = heat.common.i18n