b92357ad61
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. Add following suppress warnings in pylint.rc: - W1618: no-absolute-import - W1624: indexing-exception Story: 2006796 Task: 43282 Signed-off-by: Bernardo Decco <bernardo.deccodesiqueira@windriver.com> Change-Id: I2fa69f9ea45a27f0c60eb05ea5d0f98b47da8945
117 lines
3.3 KiB
INI
117 lines
3.3 KiB
INI
[tox]
|
|
envlist = linters,pep8,pylint
|
|
minversion = 2.3
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
install_command = pip install \
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://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
|
|
#bashate ignore errors
|
|
#E010: do not on the same line as for
|
|
#E006 Line too long
|
|
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 -n 1 -0 bashate -v -i E010,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 = python3
|
|
usedevelop = False
|
|
description =
|
|
Pylint check
|
|
deps = {[testenv]deps}
|
|
redfish
|
|
pylint
|
|
commands =
|
|
pylint {posargs} --rcfile=./pylint.rc \
|
|
tools/rvmc/centos/docker/rvmc.py \
|
|
mtce/src/hwmon/scripts/hwmond_notify.py
|
|
|
|
[testenv:pep8]
|
|
basepython = python3
|
|
usedevelop = False
|
|
deps =
|
|
flake8
|
|
description =
|
|
Run style checks
|
|
commands =
|
|
flake8
|
|
# hacking can be added for additional pep8 once this passes for all metal
|
|
|
|
[flake8]
|
|
show-source = True
|
|
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,release-tag-*
|
|
# W504 line break after binary operator
|
|
# H102 Apache License format
|
|
ignore = W504,H102
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:docs]
|
|
basepython = python3
|
|
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
|
|
envdir = {toxworkdir}/releasenotes
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
commands = reno new {posargs}
|
|
|
|
[testenv:api-ref]
|
|
basepython = python3
|
|
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
|
|
|
|
[testenv:functional]
|
|
basepython = python3
|
|
whitelist_externals = cat
|
|
commands = cat /etc/mtc.ini
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
description = Bandit code scan for *.py files under config folder
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = bandit -r {toxinidir}/ -x '**/.tox/**,**/.eggs/**' -lll
|