e0a91426af
Bandit 1.6.0 changes the behavior of the '-x' option so that it now supports glob patterns. Update our tox file to use to correctly exclude test code from bandit scans. This requires bumping our minimum bandit version. As an aside, changing the behavior of an option like this in a minor version if bad form :( Change-Id: I11bee26373ea9894b47d7f964eac88ef70859732
110 lines
2.5 KiB
INI
110 lines
2.5 KiB
INI
[tox]
|
|
skipsdist = True
|
|
minversion = 2.3.1
|
|
envlist = py35, pep8, cover, bandit
|
|
|
|
[testenv]
|
|
deps=
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
passenv=HTTP_PROXY HTTPS_PROXY http_proxy https_proxy NO_PROXY no_proxy
|
|
setenv=
|
|
VIRTUAL_ENV={envdir}
|
|
usedevelop = True
|
|
install_command = pip install {opts} {packages}
|
|
whitelist_externals =
|
|
bash
|
|
find
|
|
rm
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
rm -Rf .testrepository/times.dbm
|
|
|
|
[testenv:venv]
|
|
basepython=python3
|
|
commands =
|
|
{posargs}
|
|
|
|
[testenv:py35]
|
|
basepython = python3.5
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:py36]
|
|
basepython = python3.6
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:docs]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
rm -rf doc/build
|
|
sphinx-build -W -b html doc/source doc/build/html
|
|
|
|
[testenv:genconfig]
|
|
basepython = python3
|
|
commands =
|
|
oslo-config-generator --config-file=etc/armada/config-generator.conf
|
|
|
|
[testenv:genpolicy]
|
|
basepython = python3
|
|
commands =
|
|
oslopolicy-sample-generator --config-file=etc/armada/policy-generator.conf
|
|
|
|
[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
|
|
|
|
[testenv:pep8]
|
|
basepython = python3
|
|
deps =
|
|
.[bandit]
|
|
{[testenv]deps}
|
|
commands =
|
|
# Whitespace linter (for chart files)
|
|
bash {toxinidir}/tools/whitespace-linter.sh
|
|
yapf -dr {toxinidir}/armada {toxinidir}/setup.py
|
|
flake8 {posargs}
|
|
# Run security linter as part of the pep8 gate instead of a separate zuul job.
|
|
bandit -r armada -n 5 -x armada/tests/*
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
commands =
|
|
bandit -r armada -n 5 -x armada/tests/*
|
|
|
|
[testenv:cover]
|
|
basepython = python3
|
|
setenv = {[testenv]setenv}
|
|
PYTHON=coverage run --source armada --parallel-mode
|
|
commands =
|
|
coverage erase
|
|
find . -type f -name "*.pyc" -delete
|
|
stestr run {posargs}
|
|
coverage combine
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
coverage report
|
|
|
|
[testenv:yapf]
|
|
basepython = python3
|
|
deps = {[testenv]deps}
|
|
commands =
|
|
yapf -ir {toxinidir}/armada {toxinidir}/setup.py
|
|
|
|
[flake8]
|
|
filename = *.py
|
|
# These are ignored intentionally:
|
|
# W504 - line break after binary operator, we cannot have both
|
|
# W503 and W504 enabled
|
|
ignore = W504
|
|
exclude = .git,.tox,dist,*lib/python*,*egg,build,releasenotes,doc/*,hapi,venv
|