ironic/tox.ini
Joshua Harlow 4c7a7bdf64 Add a venv that can generate/write/update the states diagram
Instead of requiring manual understanding of how to generate
the states diagram, add an explicit virtualenv that can be
used to create and generate that docs diagram (and replace the
existing file with it).

Change-Id: I1738da9bf08bfda9b9be01489e8456569a31709e
2015-04-27 11:07:01 -07:00

69 lines
1.7 KiB
INI

[tox]
minversion = 1.6
skipsdist = True
envlist = py27,pep8
[testenv]
usedevelop = True
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
PYTHONDONTWRITEBYTECODE = 1
LANGUAGE=en_US
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
whitelist_externals = bash
commands =
bash -c "TESTS_DIR=./ironic/tests/ python setup.py testr --slowest --testr-args='{posargs}'"
[tox:jenkins]
downloadcache = ~/cache/pip
[testenv:genstates]
deps = {[testenv]deps}
pydot2
commands = {toxinidir}/tools/states_to_dot.py -f {toxinidir}/doc/source/images/states.png
[testenv:pep8]
commands =
flake8 {posargs}
# Check that .po and .pot files are valid:
bash -c "find ironic -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
[testenv:cover]
setenv = VIRTUAL_ENV={envdir}
LANGUAGE=en_US
commands =
python setup.py testr --coverage {posargs}
[testenv:checkconfig]
sitepackages = False
envdir = {toxworkdir}/venv
commands =
{toxinidir}/tools/config/check_uptodate.sh
[testenv:genconfig]
sitepackages = False
envdir = {toxworkdir}/venv
commands =
bash tools/config/generate_sample.sh -b . -p ironic -o etc/ironic
[testenv:gendocs]
setenv = PYTHONHASHSEED=0
sitepackages = False
envdir = {toxworkdir}/venv
commands =
python setup.py build_sphinx
[testenv:venv]
setenv = PYTHONHASHSEED=0
commands = {posargs}
[flake8]
# E711: ignored because it is normal to use "column == None" in sqlalchemy
ignore = E123,E126,E127,E128,E129,E711
exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools,*ironic/nova*
max-complexity=17
[hacking]
import_exceptions = testtools.matchers, ironic.common.i18n