03293715b1
New tox (>=1.7.0) sets a random python hash seed by default. This is generally good for testing because it will help keep projects working regardless of the hash seed, but cinder unittests don't currently pass with a random hash seed so set it to the python default seed. This change will allow us to use new tox again and remove the restriction on tox<=1.6.1 to run unittests. Redundant setenvs for specific test envs are removed to prevent them from overriding the PYTHONHASHSEED value. Note this change will need to be backported to the stable branches to keep unittests there working with new tox as well. Change-Id: Ia55031528d082a1b11da6890447c5584e9e27551
61 lines
1.7 KiB
INI
61 lines
1.7 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = py26,py27,py33,pep8
|
|
|
|
[testenv]
|
|
# Note the hash seed is set to 0 until cinder 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 =
|
|
python setup.py testr --slowest --testr-args='--concurrency 1 {posargs}'
|
|
{toxinidir}/tools/config/check_uptodate.sh
|
|
whitelist_externals = bash
|
|
|
|
[tox:jenkins]
|
|
downloadcache = ~/cache/pip
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8 {posargs} . cinder/common
|
|
flake8 --filename=cinder* bin
|
|
# Check that .po and .pot files are valid:
|
|
bash -c "find cinder -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
|
|
|
|
[testenv:pylint]
|
|
deps = -r{toxinidir}/requirements.txt
|
|
pylint==0.26.0
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[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:genconfig]
|
|
sitepackages = False
|
|
envdir = {toxworkdir}/venv
|
|
commands = {toxinidir}/tools/config/generate_sample.sh -b . -p cinder -o etc/cinder
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[flake8]
|
|
# Due to hacking 0.9.2 following checking are ignored on purpose for now
|
|
# E111,E112,E113,E121,E122,E123,E126,E128,E251,E265
|
|
# E713,F403,F841,H302,H305,H307,H402,H405,H803,H904
|
|
ignore = E251,E265,E711,E712,E713,F402,F841,H104,H302,H305,H307,H402,H405,H803,H904
|
|
builtins = _
|
|
exclude = .git,.venv,.tox,dist,tools,doc,common,*egg,build
|
|
|
|
[hacking]
|
|
local-check-factory = cinder.hacking.checks.factory
|