monasca-common/tox.ini
Doug Hellmann 3cdad50696 fix tox python3 overrides
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.

We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.

We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.

Change-Id: Idd29b6d5460510ec02ec10853a0809185e5823cd
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-10-05 08:13:48 +00:00

104 lines
2.6 KiB
INI

[tox]
envlist = py{27,35},pep8,cover
minversion = 2.5
skipsdist = True
[testenv]
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
OS_TEST_PATH=monasca_common/tests
passenv = http_proxy
HTTP_PROXY
https_proxy
HTTPS_PROXY
no_proxy
NO_PROXY
whitelist_externals = bash
find
rm
install_command = pip install {opts} {packages}
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
find {toxinidir} -type f -name '*.pyc' -delete
[testenv:py27]
basepython = python2.7
commands =
{[testenv]commands}
stestr run {posargs}
[testenv:py35]
basepython = python3.5
setenv =
{[testenv]setenv}
BLACKLIST_FILE={toxinidir}/test-blacklist-py3.txt
commands =
{[testenv]commands}
stestr run --blacklist-file {env:BLACKLIST_FILE} {posargs}
[testenv:cover]
basepython = python3
setenv =
PYTHON=coverage run --source monasca_common --parallel-mode
commands =
coverage erase
stestr run '{posargs}'
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:debug]
basepython = python3
commands =
{[testenv]commands}
oslo_debug_helper -t {env:OS_TEST_PATH} {posargs}
[testenv:bandit]
basepython = python3
# B101(assert_ussed) - Validation uses asserts because of performance reasons
# monasca_common/kafka_lib is a clone of kafka-python and will be deleted in the future
commands = bandit -r monasca_common -n5 -s B101 -x monasca_common/tests -x monasca_common/kafka_lib
[testenv:flake8]
basepython = python3
commands = flake8 monasca_common
[testenv:pep8]
basepython = python3
commands =
{[testenv:flake8]commands}
{[testenv:bandit]commands}
python setup.py check --restructuredtext --strict
[testenv:venv]
basepython = python3
commands = {posargs}
[testenv:bindep]
basepython = python3
deps = bindep
commands = bindep test
[flake8]
max-complexity = 50
max-line-length = 100
builtins = _
exclude=.venv,.git,.tox,dist,*egg,build
show-source = True
# note: Due to the need to fork kafka-python, many pep8 violations occure.
# All of the below ignores are caused by the forked kafka-python library
# so when Monasca migrates to confluent-kafka, the below line can be removed.
ignore = H101,H301,H404,H405
[testenv:lower-constraints]
basepython = python3
setenv = {[testenv:py35]setenv}
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt
commands = {[testenv:py35]commands}