1faa3397a6
Fixes W504 and E117, resulting in some indentation changes. Also fixes code that exceeds the complexity requirement, that is bumped to 20 (mostly to avoid refactoring the agent heartbeat call, resulting in conflicts for the deploy steps work). Change-Id: I8e49f2c039b0ddfca9138f8e148708b7e8b5df7e
147 lines
4.4 KiB
INI
147 lines
4.4 KiB
INI
[tox]
|
||
minversion = 3.1.0
|
||
skipsdist = True
|
||
envlist = py3,pep8
|
||
ignore_basepython_conflict=true
|
||
|
||
[testenv]
|
||
usedevelop = True
|
||
install_command = pip install -U {opts} {packages}
|
||
basepython = python3
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
PYTHONDONTWRITEBYTECODE = 1
|
||
LANGUAGE=en_US
|
||
LC_ALL=en_US.UTF-8
|
||
PYTHONWARNINGS=default::DeprecationWarning
|
||
TESTS_DIR=./ironic/tests/unit/
|
||
deps =
|
||
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||
-r{toxinidir}/requirements.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
commands =
|
||
stestr run {posargs}
|
||
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
||
|
||
[testenv:unit-with-driver-libs]
|
||
deps = {[testenv]deps}
|
||
-r{toxinidir}/driver-requirements.txt
|
||
|
||
[testenv:genstates]
|
||
deps = {[testenv]deps}
|
||
pydot2
|
||
commands = {toxinidir}/tools/states_to_dot.py -f {toxinidir}/doc/source/images/states.svg --format svg
|
||
|
||
[testenv:pep8]
|
||
whitelist_externals = bash
|
||
commands =
|
||
bash tools/flake8wrap.sh {posargs}
|
||
# Run bashate during pep8 runs to ensure violations are caught by
|
||
# the check and gate queues.
|
||
{toxinidir}/tools/run_bashate.sh {toxinidir}
|
||
# Check the *.rst files
|
||
doc8 README.rst CONTRIBUTING.rst doc/source --ignore D001
|
||
# Check to make sure reno releasenotes created with 'reno new'
|
||
{toxinidir}/tools/check-releasenotes.py
|
||
|
||
[testenv:cover]
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
LANGUAGE=en_US
|
||
PYTHON=coverage run --source ironic --omit='*tests*' --parallel-mode
|
||
commands =
|
||
coverage erase
|
||
stestr run {posargs}
|
||
coverage combine
|
||
coverage report --omit='*tests*'
|
||
coverage html -d ./cover --omit='*tests*'
|
||
|
||
[testenv:genconfig]
|
||
sitepackages = False
|
||
envdir = {toxworkdir}/venv
|
||
commands =
|
||
oslo-config-generator --config-file=tools/config/ironic-config-generator.conf
|
||
|
||
[testenv:genpolicy]
|
||
sitepackages = False
|
||
envdir = {toxworkdir}/venv
|
||
commands =
|
||
oslopolicy-sample-generator --config-file=tools/policy/ironic-policy-generator.conf
|
||
|
||
[testenv:debug]
|
||
commands = oslo_debug_helper -t ironic/tests/unit {posargs}
|
||
|
||
[testenv:docs]
|
||
deps =
|
||
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||
-r{toxinidir}/requirements.txt
|
||
-r{toxinidir}/doc/requirements.txt
|
||
-r{toxinidir}/driver-requirements.txt
|
||
commands = sphinx-build -b html -W doc/source doc/build/html
|
||
|
||
[testenv:pdf-docs]
|
||
whitelist_externals = make
|
||
deps = {[testenv:docs]deps}
|
||
commands =
|
||
sphinx-build -W -b latex doc/source doc/build/pdf
|
||
make -C doc/build/pdf
|
||
|
||
|
||
[testenv:api-ref]
|
||
deps =
|
||
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||
-r{toxinidir}/doc/requirements.txt
|
||
whitelist_externals = bash
|
||
commands =
|
||
bash -c 'rm -rf api-ref/build'
|
||
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
||
|
||
[testenv:releasenotes]
|
||
deps =
|
||
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||
|
||
[testenv:venv]
|
||
setenv = PYTHONHASHSEED=0
|
||
deps =
|
||
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||
-r{toxinidir}/test-requirements.txt
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands = {posargs}
|
||
|
||
[flake8]
|
||
# [W503] Line break before binary operator.
|
||
ignore = E129,W503
|
||
filename = *.py,app.wsgi
|
||
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build
|
||
import-order-style = pep8
|
||
application-import-names = ironic
|
||
max-complexity=20
|
||
# [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.
|
||
# TODO(dtantsur): [H210] Require ‘autospec’, ‘spec’, or ‘spec_set’ in mock.patch/mock.patch.object calls
|
||
# [H904] Delay string interpolations at logging calls.
|
||
enable-extensions=H106,H203,H204,H205,H904
|
||
|
||
[hacking]
|
||
import_exceptions = testtools.matchers, ironic.common.i18n
|
||
|
||
[flake8:local-plugins]
|
||
# [N323] Found use of _() without explicit import of _!
|
||
extension =
|
||
N323 = checks:check_explicit_underscore_import
|
||
paths = ./ironic/hacking/
|
||
|
||
[testenv:lower-constraints]
|
||
deps =
|
||
-c{toxinidir}/lower-constraints.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
-r{toxinidir}/requirements.txt
|
||
|
||
[testenv:bandit]
|
||
deps = -r{toxinidir}/test-requirements.txt
|
||
commands = bandit -r ironic -x tests -n5 -ll -c tools/bandit.yml
|
||
|