3cce888421
This patch updates tox ini to support both a dev and build target; lower-constraints-dev and lower-constraints respectively. The dev target is for running locally so it manually installs the required projects whereas the build target doesn't as per zuul's required project definition in project.yaml. Also see https://review.openstack.org/#/c/573386/ Change-Id: I0e6cf1ca0f4b07c080ff5a7b221dabedfd8bf6cf
188 lines
7.2 KiB
INI
188 lines
7.2 KiB
INI
[tox]
|
||
envlist = py35,py27,pep8,docs
|
||
minversion = 1.6
|
||
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
|
||
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
||
-r{toxinidir}/requirements.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
whitelist_externals =
|
||
sh
|
||
stestr
|
||
commands =
|
||
stestr run {posargs}
|
||
stestr slowest
|
||
|
||
[testenv:common]
|
||
# Fake job to define environment variables shared between dsvm/non-dsvm jobs
|
||
setenv = OS_TEST_TIMEOUT=180
|
||
commands = false
|
||
|
||
[testenv:functional]
|
||
basepython = python2.7
|
||
setenv = {[testenv]setenv}
|
||
{[testenv:common]setenv}
|
||
OS_TEST_PATH=./vmware_nsx/tests/functional
|
||
OS_LOG_PATH={env:OS_LOG_PATH:/opt/stack/logs}
|
||
deps =
|
||
{[testenv]deps}
|
||
-r{toxinidir}/vmware_nsx/tests/functional/requirements.txt
|
||
|
||
[testenv:dsvm-functional]
|
||
basepython = python2.7
|
||
setenv = OS_SUDO_TESTING=1
|
||
OS_FAIL_ON_MISSING_DEPS=1
|
||
OS_TEST_TIMEOUT=180
|
||
sitepackages=True
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
commands =
|
||
stestr run {posargs}
|
||
stestr slowest
|
||
|
||
[tox:jenkins]
|
||
sitepackages = True
|
||
|
||
[testenv:releasenotes]
|
||
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||
|
||
[testenv:py27]
|
||
setenv = OS_FAIL_ON_MISSING_DEPS=1
|
||
|
||
[testenv:py27-dev]
|
||
# run py27 locally (not in the gate) using editable mode
|
||
# https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs
|
||
# note that order is important to ensure dependencies don't override
|
||
commands =
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-l2gw#egg=networking_l2gw"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-sfc#egg=networking_sfc"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-lbaas#egg=neutron_lbaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-fwaas#egg=neutron_fwaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-dynamic-routing#egg=neutron_dynamic_routing"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-vpnaas#egg=neutron_vpnaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/vmware-nsxlib#egg=vmware_nsxlib"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron#egg=neutron"
|
||
pip freeze
|
||
stestr run {posargs}
|
||
whitelist_externals =
|
||
stestr
|
||
|
||
[testenv:pep8]
|
||
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
|
||
# Checks for coding and style guidelines
|
||
flake8
|
||
sh ./tools/coding-checks.sh --pylint '{posargs}'
|
||
neutron-db-manage --subproject vmware-nsx check_migration
|
||
{[testenv:genconfig]commands}
|
||
whitelist_externals =
|
||
sh
|
||
bash
|
||
|
||
[testenv:pep8-dev]
|
||
# run pep8 locally (not in the gate) using editable mode
|
||
# https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs
|
||
# note that order is important to ensure dependencies don't override
|
||
commands =
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-l2gw#egg=networking_l2gw"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-sfc#egg=networking_sfc"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-lbaas#egg=neutron_lbaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-fwaas#egg=neutron_fwaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-dynamic-routing#egg=neutron_dynamic_routing"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-vpnaas#egg=neutron_vpnaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/vmware-nsxlib#egg=vmware_nsxlib"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron#egg=neutron"
|
||
pip freeze
|
||
# If it is easier to add a check via a shell script, consider adding it in this file
|
||
sh ./tools/misc-sanity-checks.sh
|
||
# Checks for coding and style guidelines
|
||
flake8 {toxinidir}/vmware_nsx
|
||
sh ./tools/coding-checks.sh --pylint '{posargs}'
|
||
neutron-db-manage --subproject vmware-nsx check_migration
|
||
{[testenv:genconfig]commands}
|
||
whitelist_externals =
|
||
sh
|
||
|
||
[testenv:bandit]
|
||
commands = bandit -r vmware_nsx -n 5 -ll
|
||
|
||
[testenv:cover]
|
||
basepython = python2.7
|
||
commands =
|
||
python setup.py testr --coverage --testr-args='{posargs}'
|
||
coverage report
|
||
|
||
[testenv:venv]
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands = sphinx-build -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 ‘# ‘
|
||
# H305 imports not grouped correctly
|
||
# H307 like imports should be grouped together
|
||
# H404 multi line docstring should start with a summary
|
||
# H405 multi line docstring summary not separated with an empty line
|
||
# H904 Wrap long lines in parentheses instead of a backslash
|
||
# TODO(dougwig) -- uncomment this to test for remaining linkages
|
||
# N530 direct neutron imports not allowed
|
||
# N531 translations hints
|
||
ignore = E125,E126,E128,E129,E265,H305,H307,H404,H405,H904,N530,N531
|
||
show-source = true
|
||
builtins = _
|
||
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,.ropeproject
|
||
import-order-style = pep8
|
||
|
||
[hacking]
|
||
import_exceptions = vmware_nsx._i18n,
|
||
local-check-factory = neutron_lib.hacking.checks.factory
|
||
|
||
[testenv:genconfig]
|
||
commands = {toxinidir}/tools/generate_config_file_samples.sh
|
||
|
||
[testenv:uuidgen]
|
||
commands =
|
||
check-uuid --fix
|
||
|
||
[testenv:lower-constraints]
|
||
basepython = python3
|
||
deps =
|
||
-c{toxinidir}/lower-constraints.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
-r{toxinidir}/doc/requirements.txt
|
||
-r{toxinidir}/requirements.txt
|
||
|
||
[testenv:lower-constraints-dev]
|
||
basepython = python3
|
||
commands =
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-l2gw#egg=networking_l2gw"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/networking-sfc#egg=networking_sfc"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-lbaas#egg=neutron_lbaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-fwaas#egg=neutron_fwaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-dynamic-routing#egg=neutron_dynamic_routing"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron-vpnaas#egg=neutron_vpnaas"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/vmware-nsxlib#egg=vmware_nsxlib"
|
||
pip install -q -e "git+https://git.openstack.org/openstack/neutron#egg=neutron"
|
||
pip freeze
|
||
stestr run {posargs}
|
||
deps =
|
||
-c{toxinidir}/lower-constraints.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
-r{toxinidir}/doc/requirements.txt
|
||
-r{toxinidir}/requirements.txt
|