766abb752a
There is a bug in pep8, when 'select' used, it omits all default checks and runs only those specified by 'select'. We got hit by this issue since I2d26534230ffe5d01aa0aab6ec902f81cfba774d was merged which lead to almost no static checks in pep8 job. Also note that off_by_default decorator has no effect for now because factory in hacking is triggered after ignored checks are collected. There will be a follow-up patch for that in order to make pep8 doing its job quickly. [1] https://github.com/PyCQA/pycodestyle/issues/390 Related-Bug: 1594756 Change-Id: I8e27f40908e1bb4307cc7c893169a9d99f3433c4
138 lines
4.5 KiB
INI
138 lines
4.5 KiB
INI
[tox]
|
||
envlist = docs,py34,py27,pep8
|
||
minversion = 2.3.1
|
||
skipsdist = True
|
||
|
||
[testenv]
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
passenv = TRACE_FAILONLY GENERATE_HASHES http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
||
usedevelop = True
|
||
install_command =
|
||
pip install -U -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {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:common]
|
||
# Fake job to define environment variables shared between dsvm/non-dsvm jobs
|
||
setenv = OS_TEST_TIMEOUT=180
|
||
commands = false
|
||
|
||
[testenv:dsvm]
|
||
# Fake job to define environment variables shared between dsvm jobs
|
||
setenv = OS_SUDO_TESTING=1
|
||
OS_ROOTWRAP_CMD=sudo {envdir}/bin/neutron-rootwrap {envdir}/etc/neutron/rootwrap.conf
|
||
OS_ROOTWRAP_DAEMON_CMD=sudo {envdir}/bin/neutron-rootwrap-daemon {envdir}/etc/neutron/rootwrap.conf
|
||
OS_FAIL_ON_MISSING_DEPS=1
|
||
OS_LOG_PATH={env:OS_LOG_PATH:/opt/stack/logs}
|
||
commands = false
|
||
|
||
[testenv:functional]
|
||
basepython = python2.7
|
||
setenv = {[testenv]setenv}
|
||
{[testenv:common]setenv}
|
||
OS_TEST_PATH=./neutron/tests/functional
|
||
OS_LOG_PATH={env:OS_LOG_PATH:/opt/stack/logs}
|
||
deps =
|
||
{[testenv]deps}
|
||
-r{toxinidir}/neutron/tests/functional/requirements.txt
|
||
|
||
[testenv:functional-py34]
|
||
basepython = python3.4
|
||
setenv = {[testenv:functional]setenv}
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
|
||
[testenv:dsvm-functional]
|
||
basepython = python2.7
|
||
setenv = {[testenv:functional]setenv}
|
||
{[testenv:dsvm]setenv}
|
||
sitepackages=True
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
commands =
|
||
{toxinidir}/tools/deploy_rootwrap.sh {toxinidir} {envdir}/etc {envdir}/bin
|
||
{toxinidir}/tools/ostestr_compat_shim.sh {posargs}
|
||
|
||
[testenv:dsvm-functional-py34]
|
||
basepython = python3.4
|
||
setenv = {[testenv:dsvm-functional]setenv}
|
||
sitepackages={[testenv:dsvm-functional]sitepackages}
|
||
deps =
|
||
{[testenv:dsvm-functional]deps}
|
||
commands =
|
||
{toxinidir}/tools/deploy_rootwrap.sh {toxinidir} {envdir}/etc {envdir}/bin
|
||
{toxinidir}/tools/ostestr_compat_shim.sh {posargs}
|
||
|
||
[testenv:dsvm-fullstack]
|
||
setenv = {[testenv]setenv}
|
||
{[testenv:common]setenv}
|
||
{[testenv:dsvm]setenv}
|
||
# workaround for DB teardown lock contention (bug/1541742)
|
||
OS_TEST_TIMEOUT=600
|
||
OS_TEST_PATH=./neutron/tests/fullstack
|
||
sitepackages=True
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
|
||
[testenv:releasenotes]
|
||
# TODO(ihrachys): remove once infra supports constraints for this target
|
||
install_command = pip install -U {opts} {packages}
|
||
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||
|
||
[testenv:pep8]
|
||
basepython = python2.7
|
||
deps =
|
||
{[testenv]deps}
|
||
commands=
|
||
# If it is easier to add a check via a shell script, consider adding it in this file
|
||
sh ./tools/misc-sanity-checks.sh
|
||
{toxinidir}/tools/check_unit_test_structure.sh
|
||
# Checks for coding and style guidelines
|
||
flake8
|
||
sh ./tools/coding-checks.sh --pylint '{posargs}'
|
||
neutron-db-manage --config-file neutron/tests/etc/neutron.conf check_migration
|
||
{[testenv:genconfig]commands}
|
||
whitelist_externals =
|
||
sh
|
||
bash
|
||
|
||
[testenv:cover]
|
||
# TODO(ihrachys): remove once infra supports constraints for this target
|
||
install_command = pip install -U {opts} {packages}
|
||
basepython = python2.7
|
||
commands =
|
||
python setup.py testr --coverage --testr-args='{posargs}'
|
||
coverage report
|
||
|
||
[testenv:venv]
|
||
# TODO(ihrachys): remove once infra supports constraints for this target
|
||
install_command = pip install -U {opts} {packages}
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
commands = sphinx-build -W -b html doc/source doc/build/html
|
||
|
||
[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
|
||
# E265 block comment should start with ‘# ‘
|
||
# H404 multi line docstring should start with a summary
|
||
# H405 multi line docstring summary not separated with an empty line
|
||
ignore = E125,E126,E128,E129,E265,H404,H405
|
||
show-source = true
|
||
exclude = ./.*,build,dist
|
||
|
||
[hacking]
|
||
import_exceptions = neutron._i18n
|
||
local-check-factory = neutron.hacking.checks.factory
|
||
|
||
[testenv:genconfig]
|
||
commands = {toxinidir}/tools/generate_config_file_samples.sh
|