[tox] minversion = 1.6 skipsdist = True envlist = py26,py27,pep8 [testenv] usedevelop = True install_command = pip install -U {opts} {packages} setenv = VIRTUAL_ENV={envdir} 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}'" bash -c "TESTS_DIR=./ironic/nova/tests/ python setup.py testr --slowest --testr-args='{posargs}'" bash -c "cat .testrepository/1 >>.testrepository/0" [tox:jenkins] downloadcache = ~/cache/pip [testenv:pep8] commands = flake8 {posargs} {toxinidir}/tools/config/check_uptodate.sh # 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} commands = python setup.py testr --coverage {posargs} [testenv:genconfig] commands = bash tools/config/generate_sample.sh -b . -p ironic -o etc/ironic [testenv:venv] commands = {posargs} [flake8] # E711: ignored because it is normal to use "column == None" in sqlalchemy ignore = E12,E711 select = E713 builtins = _ exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools,*ironic/nova* [hacking] import_exceptions = ironic.openstack.common.gettextutils._, ironic.openstack.common.gettextutils._LI, ironic.openstack.common.gettextutils._LW,ironic.openstack.common.gettextutils._LE, ironic.openstack.common.gettextutils._LC, testtools.matchers, ironic.common.i18n._