
- adds support for building PDF docs. - adds a bindep.txt file with required deps for pdf docs - groups the tox envs into logicaly related sections. - This change updates the default set of jobs so that runing tox with out any arguments should run the default set of jobs that should pass before pushing changes for review. Change-Id: Id5df8afe576881cba58b3288acd79501ef1de511
102 lines
2.7 KiB
INI
102 lines
2.7 KiB
INI
[tox]
|
|
minversion = 3.1.1
|
|
envlist = py3,pep8,docs,releasenotes,cover,lower-constraints
|
|
skipsdist = True
|
|
ignore_basepython_conflict = True
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
usedevelop = True
|
|
setenv =
|
|
CONSTRAINTS_OPT=-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
|
deps =
|
|
{env:CONSTRAINTS_OPT}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = stestr run --black-regex ".tests.functional" {posargs}
|
|
|
|
[testenv:functional]
|
|
envdir = {toxworkdir}/shared
|
|
setenv =
|
|
{[testenv]setenv}
|
|
commands =
|
|
stestr run --black-regex ".tests.unit" {posargs}
|
|
|
|
[testenv:docs]
|
|
deps =
|
|
{env:CONSTRAINTS_OPT}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands = sphinx-build -W -b html doc/source doc/build/html
|
|
|
|
[testenv:pdf-docs]
|
|
envdir = {toxworkdir}/docs
|
|
deps = {[testenv:docs]deps}
|
|
whitelist_externals =
|
|
rm
|
|
make
|
|
commands =
|
|
rm -rf doc/build/pdf
|
|
sphinx-build -W -b latex doc/source doc/build/pdf
|
|
make -C doc/build/pdf
|
|
|
|
[testenv:releasenotes]
|
|
envdir = {toxworkdir}/docs
|
|
deps = {[testenv:docs]deps}
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[testenv:lower-constraints]
|
|
deps =
|
|
-c{toxinidir}/lower-constraints.txt
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
stestr run --black-regex ".tests.functional" {posargs}
|
|
sphinx-build -W doc/source doc/build
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
deps =
|
|
{[testenv]deps}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
|
|
[testenv:cover]
|
|
envdir = {toxworkdir}/shared
|
|
setenv =
|
|
{[testenv]setenv}
|
|
PYTHON=coverage run --source os_vif,vif_plug_linux_bridge,vif_plug_ovs,vif_plug_noop --parallel-mode
|
|
commands =
|
|
stestr run --black-regex ".tests.functional" {posargs}
|
|
coverage combine
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
coverage report
|
|
|
|
[testenv:pep8]
|
|
envdir = {toxworkdir}/shared
|
|
commands = flake8
|
|
|
|
[flake8]
|
|
# E123, E125 skipped as they are invalid PEP-8.
|
|
# Following checks are ignored on purpose.
|
|
#
|
|
# H404, H405 skipped on purpose per jay pipes discussion.
|
|
# W504 line break after binary operator
|
|
show-source = True
|
|
ignore = E123,E125,E126,E127,E128,H404,H405,W504
|
|
enable-extensions = H106,H203
|
|
builtins = _
|
|
exclude = .venv,.git,.tox,dist,*lib/python*,*egg,build
|
|
max-complexity = 30
|
|
|
|
[hacking]
|
|
import_exceptions = os_vif.i18n
|
|
|
|
[testenv:bindep]
|
|
# 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
|