OVN Octavia provider driver.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

168 lines
5.3 KiB

minversion = 3.18.0
envlist = docs,py38,pep8
skipsdist = True
ignore_basepython_conflict = True
basepython = python3
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
allowlist_externals = bash
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY TOX_ENV_SRC_MODULES
commands =
{toxinidir}/tools/pip_install_src_modules.sh "{toxinidir}"
stestr run {posargs}
envdir = {toxworkdir}/shared
commands = flake8
{toxinidir}/tools/coding-checks.sh --pylint '{posargs}'
commands = {posargs}
setenv =
deps = {[testenv]deps}
# Fake job to define environment variables shared between dsvm jobs
setenv = OS_TEST_TIMEOUT=240
commands = false
setenv = {[testenv:functional]setenv}
deps = {[testenv:functional]deps}
commands =
stestr run {posargs}
envdir = {toxworkdir}/shared
setenv =
PYTHON=coverage run --source ovn_octavia_provider --parallel-mode
commands =
stestr run --no-subunit-trace {posargs}
coverage combine
coverage report --fail-under=90 --skip-covered
coverage html -d cover
coverage xml -o cover/coverage.xml
envdir = {toxworkdir}/docs
deps =
commands = sphinx-build -W -b html doc/source doc/build/html
envdir = {toxworkdir}/docs
deps = {[testenv:docs]deps}
allowlist_externals =
commands =
sphinx-build -W -b latex doc/source doc/build/pdf
make -C doc/build/pdf
envdir = {toxworkdir}/shared
commands = oslo_debug_helper -t ovn_octavia_provider/tests {posargs}
envdir = {toxworkdir}/docs
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
# W504 line break after binary operator
ignore = W504
# H106: Don't put vim configuration in source files
# H203: Use assertIs(Not)None to check for None
# H204: Use assert(Not)Equal to check for equality
# H205: Use assert(Greater|Less)(Equal) for comparison
# H904: Delay string interpolations at logging calls
show-source = True
import-order-style = pep8
import_exceptions = ovn_octavia_provider.i18n
extension =
N322 = checks:check_assert_called_once_with
N328 = checks:check_asserttruefalse
N330 = checks:check_assertempty
N331 = checks:check_assertisinstance
N332 = checks:check_assertequal_for_httpcode
N343 = checks:check_no_imports_from_tests
N344 = checks:check_python3_no_filter
N347 = checks:check_no_import_mock
N348 = checks:check_assertcountequal
paths =./ovn_octavia_provider/hacking
envdir = {toxworkdir}/shared
commands = {toxinidir}/tools/generate_config_file_samples.sh
# This environment can be used to quickly validate that all needed system
# packages required to successfully execute test targets are installed
# Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed
# separately, outside of the requirements files.
deps = bindep
commands = bindep test
deps =
deps =
allowlist_externals = sh
commands =
sh -c '{envdir}/src/openstack-requirements/playbooks/files/project-requirements-change.py --req {envdir}/src/openstack-requirements --local {toxinidir} master'
envdir = {toxworkdir}/shared
deps = -r{toxinidir}/test-requirements.txt
commands = bandit -r ovn_octavia_provider -x tests -n5
# run locally (not in the gate) using editable mode
# https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs
commands =
pip install -q -e "git+https://git.openstack.org/openstack/neutron#egg=neutron"
deps =
commands =