osprofiler/tox.ini
Hervé Beraud 42d5819ca6 Use py3 as the default runtime for tox
Moving on py3 as the default runtime for tox to avoid to update this at
each new cycle.

Wallaby support officially the following runtimes [1]:
- Python 3.6
- Python 3.8

During Victoria Python 3.7 was used as the default runtime [2] however this
version isn't longer officially supported.

[1] https://governance.openstack.org/tc/reference/runtimes/wallaby.html#python-runtimes-for-wallaby
[2] https://governance.openstack.org/tc/reference/runtimes/victoria.html#python-runtimes-for-victoria

Change-Id: Ic2411eef55b26345fb8bb0d3d7c83cf6b366af94
2020-11-04 10:06:29 +01:00

93 lines
2.3 KiB
INI

[tox]
minversion = 3.1.0
# Needed to create ChangeLog for docs building
skipsdist = False
envlist = py3,pep8
ignore_basepython_conflict = True
[testenv]
basepython = python3
setenv = VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ALL=C
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
usedevelop = True
commands = stestr run --slowest {posargs}
distribute = false
[testenv:functional]
setenv = {[testenv]setenv}
OS_TEST_PATH=./osprofiler/tests/functional
deps =
{[testenv]deps}
oslo.messaging
[testenv:functional-py36]
basepython = python3.6
setenv = {[testenv:functional]setenv}
deps =
{[testenv:functional]deps}
[testenv:pep8]
commands =
pre-commit run -a
# Run security linter
bandit -r osprofiler -n5
distribute = false
[testenv:venv]
commands = {posargs}
[testenv:cover]
setenv =
PYTHON=coverage run --source osprofiler --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:docs]
commands =
sphinx-build -W --keep-going -b html -d doc/build/doctrees doc/source doc/build/html
[testenv:bandit]
commands = bandit -r osprofiler -n5
[flake8]
show-source = true
builtins = _
# E741 ambiguous variable name 'l'
# W503 line break before binary operator
ignore = E741,W503
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools,setup.py,build,releasenotes
import-order-style = pep8
application-import-names = osprofiler
[flake8:local-plugins]
extension =
N301 = checks:check_assert_methods_from_mock
N320 = checks:assert_true_instance
N321 = checks:assert_equal_type
N322 = checks:assert_equal_none
N323 = checks:assert_true_or_false_with_in
N324 = checks:assert_equal_in
N351 = checks:check_no_constructor_data_struct
N352 = checks:check_dict_formatting_in_string
N353 = checks:check_using_unicode
N354 = checks:check_raises
paths = ./osprofiler/hacking
[testenv:releasenotes]
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:lower-constraints]
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt