acd187ffdb
A lot of work has gone into making sure that StarlingX is python3 compatible. To ensure future compatibility, enable the python3 portability checks. Disable the checks that are raising errors. Another set of commits will address the offending code. Story: 2006796 Task: 43269 Signed-off-by: Bernardo Decco <bernardo.deccodesiqueira@windriver.com> Change-Id: I48d05d5bd8a4820fb02a47023af06411b62fa0a8
158 lines
4.8 KiB
INI
158 lines
4.8 KiB
INI
[tox]
|
||
envlist = linters,pep8,pylint
|
||
minversion = 2.3
|
||
skipsdist = True
|
||
|
||
[testenv]
|
||
install_command = pip install \
|
||
-chttps://opendev.org/openstack/requirements/raw/branch/stable/stein/upper-constraints.txt \
|
||
{opts} {packages}
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
OS_STDOUT_CAPTURE=1
|
||
OS_STDERR_CAPTURE=1
|
||
OS_TEST_TIMEOUT=60
|
||
deps = -r{toxinidir}/test-requirements.txt
|
||
whitelist_externals = reno
|
||
|
||
[testenv:linters]
|
||
basepython = python3
|
||
whitelist_externals = bash
|
||
commands =
|
||
bash -c "find {toxinidir} \
|
||
-not \( -type d -name .?\* -prune \) \
|
||
-type f \
|
||
-not -name \*~ \
|
||
-not -name \*.md \
|
||
\( \
|
||
-name \*.sh \
|
||
-or -not -wholename \*/devstack/files/\* \
|
||
-wholename \*/devstack/\* \
|
||
\) \
|
||
-print0 | xargs -r -n 1 -0 bashate -v -e E* -i E006"
|
||
bash -c "find {toxinidir} \
|
||
\( -name middleware/io-monitor/recipes-common/io-monitor/io-monitor/io_monitor/test-tools/yaml/* -prune \) \
|
||
-o \( -name .tox -prune \) \
|
||
-o -type f -name '*.yaml' \
|
||
-print0 | xargs -0 yamllint"
|
||
|
||
[testenv:pylint]
|
||
basepython = python2.7
|
||
deps = {[testenv]deps}
|
||
eventlet
|
||
httplib2
|
||
iso8601
|
||
jsonpatch
|
||
keystonemiddleware
|
||
kombu
|
||
MySQL-python
|
||
oslo.config
|
||
pecan
|
||
prettytable
|
||
psutil
|
||
sqlalchemy
|
||
sqlalchemy-migrate
|
||
wsme
|
||
pylint
|
||
commands =
|
||
pylint --rcfile=./pylint.rc --extension-pkg-whitelist=greenlet \
|
||
./service-mgmt-api/sm-api/sm_api/ \
|
||
./service-mgmt-tools/sm-tools/sm_tools/ \
|
||
./service-mgmt-client/sm-client/sm_client/
|
||
|
||
[flake8]
|
||
# The following are being suppressed for now
|
||
# E402 module level import not at top of file
|
||
# - hacking codes -
|
||
# H102: license header not found
|
||
# H104: File contains nothing but comments
|
||
# H105: Don't use author tags
|
||
# H306: imports not in alphabetical order
|
||
# H401: docstring should not start with a space
|
||
# H403: multi line docstrings should end on a new line
|
||
# H404: multi line docstring should start without a leading new line
|
||
# H405: multi line docstring summary not separated with an empty line
|
||
# H501: Do not use locals() for string formatting
|
||
# W are warnings
|
||
# W504 W504 line break after binary operator
|
||
# W605 invalid escape sequence
|
||
# - errors -
|
||
# E741 ambiguous variable name
|
||
# F811 redefinition of unused '<foo>' from line <x>
|
||
# F821 undefined name 'e'
|
||
# F841 local variable
|
||
# F901 'raise NotImplemented' should be 'raise NotImplementedError'
|
||
# - bugbear -
|
||
# B008 Do not perform calls in argument defaults. The call is performed only once at function definition time.
|
||
# B014 Redundant exception types
|
||
ignore= E402,
|
||
H102,H104,H105,H106,H306,H401,H403,H404,H405,H501,
|
||
W504,W605,
|
||
E741,
|
||
F811,F821,F841,F901,
|
||
B008,B014
|
||
# Enable checks which are off by default
|
||
# H106 Don’t put vim configuration in source files (off by default). SHOULD BE ENABLED.
|
||
# H203 Use assertIs(Not)None to check for None (off by default).
|
||
# H904 Delay string interpolations at logging calls (off by default). SHOULD BE ENABLED.
|
||
enable-extensions = H203
|
||
max-line-length = 110
|
||
|
||
[testenv:pep8]
|
||
basepython = python3
|
||
usedevelop = False
|
||
skip_install = True
|
||
deps =
|
||
-r{toxinidir}/test-requirements.txt
|
||
flake8-bugbear
|
||
commands =
|
||
flake8
|
||
|
||
[testenv:venv]
|
||
basepython = python3
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
basepython = python3
|
||
install_command = pip install -U {opts} {packages}
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf doc/build
|
||
sphinx-build -a -E -W -d doc/build/doctrees -b html doc/source doc/build/html
|
||
whitelist_externals = rm
|
||
|
||
[testenv:releasenotes]
|
||
basepython = python3
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf releasenotes/build
|
||
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||
whitelist_externals = rm
|
||
|
||
[testenv:newnote]
|
||
basepython = python3
|
||
# Re-use the releasenotes venv
|
||
install_command = pip install -U {opts} {packages}
|
||
envdir = {toxworkdir}/releasenotes
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands = reno new {posargs}
|
||
|
||
[testenv:api-ref]
|
||
basepython = python3
|
||
install_command = pip install -U {opts} {packages}
|
||
deps =
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf api-ref/build
|
||
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
||
whitelist_externals = rm
|
||
|
||
[bandit]
|
||
# B411: blacklist Using xmlrpclib
|
||
skips = B411
|
||
|
||
[testenv:bandit]
|
||
basepython = python3
|
||
description = Bandit code scan for *.py files under config folder
|
||
deps = -r{toxinidir}/test-requirements.txt
|
||
commands = bandit --ini tox.ini -r {toxinidir}/ -x '**/.tox/**',**/.eggs/** -lll
|