7f51d607da
For gate jobs run on the master, the master branch of OpenStack global requirements is automatically checked out. However, since GBP master currently trails in release version, we checkout the relevant branch for the requirements repo before running tox. A separate commit that temporarily disables NSX UTs is squashed here. The original commit message of that patch reads as follows: " Nsx policy: skip UTs temporarily Skip UTs while driver code is being adjusted to new backend version. We will not maintain support for old backend version APIs. " Neither of these two commits will pass the gate independently, hence they are being combined in one patch here. Change-Id: I20cb957411e734165151ad40e1c0978af31c3cca
101 lines
3.6 KiB
INI
101 lines
3.6 KiB
INI
[tox]
|
||
envlist = py27,py33,pep8
|
||
minversion = 2.3.1
|
||
skipsdist = True
|
||
|
||
[testenv]
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
PYTHONWARNINGS=default::DeprecationWarning
|
||
passenv = TRACE_FAILONLY GENERATE_HASHES http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
||
usedevelop = True
|
||
install_command =
|
||
{toxinidir}/tools/tox_install.sh {env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike} {opts} {packages}
|
||
deps = -r{toxinidir}/requirements.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
whitelist_externals = sh
|
||
commands =
|
||
{toxinidir}/tools/ostestr_compat_shim.sh {posargs}
|
||
# there is also secret magic in ostestr which lets you run in a fail only
|
||
# mode. To do this define the TRACE_FAILONLY environmental variable.
|
||
|
||
[testenv:hashtest]
|
||
# This is the same as default environment, but with a random PYTHONHASHSEED.
|
||
# You can also specify a specific hashseed (for test repeatability) as follows:
|
||
# tox --hashseed 1235130571 -e hashtest
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
|
||
[testenv:functional]
|
||
setenv = OS_TEST_PATH=./gbpservice/tests/functional
|
||
commands =
|
||
python setup.py testr --slowest --testr-args='{posargs}'
|
||
|
||
[testenv:dsvm-functional]
|
||
setenv = OS_TEST_PATH=./gbpservice/tests/functional
|
||
OS_SUDO_TESTING=1
|
||
OS_ROOTWRAP_CMD=sudo /usr/local/bin/neutron-rootwrap /etc/neutron/rootwrap.conf
|
||
OS_FAIL_ON_MISSING_DEPS=1
|
||
sitepackages=True
|
||
commands =
|
||
python setup.py testr --slowest --testr-args='{posargs}'
|
||
|
||
[tox:jenkins]
|
||
sitepackages = True
|
||
|
||
[testenv:pep8]
|
||
commands =
|
||
flake8
|
||
gbp-db-manage check_migration
|
||
|
||
[testenv:i18n]
|
||
commands =
|
||
python ./tools/check_i18n.py ./neutron ./tools/i18n_cfg.py
|
||
|
||
[testenv:cover]
|
||
commands =
|
||
coverage erase
|
||
python setup.py testr --coverage --coverage-package-name gbpservice --testr-args='{posargs}'
|
||
coverage combine
|
||
coverage html --include='gbpservice/*' -d covhtml -i
|
||
|
||
[testenv:venv]
|
||
install_command = pip install -U {opts} {packages}
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
commands = python setup.py build_sphinx
|
||
|
||
[flake8]
|
||
# E125 continuation line does not distinguish itself from next logical line
|
||
# E126 continuation line over-indented for hanging indent
|
||
# E128 continuation line under-indented for visual indent
|
||
# E129 visually indented line with same indent as next logical line
|
||
# E251 unexpected spaces around keyword / parameter equals
|
||
# E265 block comment should start with ‘# ‘
|
||
# E713 test for membership should be ‘not in’
|
||
# F402 import module shadowed by loop variable
|
||
# F811 redefinition of unused variable
|
||
# F812 list comprehension redefines name from line
|
||
# H104 file contains nothing but comments
|
||
# H237 module is removed in Python 3
|
||
# H305 imports not grouped correctly
|
||
# H307 like imports should be grouped together
|
||
# H401 docstring should not start with a space
|
||
# H402 one line docstring needs punctuation
|
||
# H405 multi line docstring summary not separated with an empty line
|
||
# TODO(marun) H404 multi line docstring should start with a summary
|
||
# N530 direct neutron imports not allowed
|
||
# N531 Log messages require translation hints
|
||
# N534 Untranslated exception message
|
||
ignore = E125,E126,E128,E129,E251,E265,E713,F402,F811,F812,H104,H237,H305,H307,H401,H402,H404,H405,N530,N531,N534
|
||
show-source = true
|
||
builtins = _
|
||
|
||
# H106: Don’t put vim configuration in source files
|
||
# H203: Use assertIs(Not)None to check for None
|
||
enable-extensions = H106,H203
|
||
exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools,.ropeproject,rally-scenarios,
|
||
|
||
[hacking]
|
||
import_exceptions = neutron.openstack.common.gettextutils
|
||
local-check-factory = neutron_lib.hacking.checks.factory
|