Files
python-cinderclient/tox.ini
Sean McGinnis 8b5d67930c Bump default tox env from py37 to py38
Python 3.8 is now our highest level supported python runtime.
This updates the default tox target environments to swap out
py37 for py38 to make sure local development testing is
covering this version.

This does not impact zuul jobs in any way, nor prevent local
tests against py37. It just changes the default if none is
explicitly provided.

Change-Id: Ie26a8d5a79c3ba8348419f031af0cef0f0e5c6c7
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020-04-24 10:25:54 -05:00

115 lines
3.1 KiB
INI

[tox]
distribute = False
envlist = py36,py38,pep8
minversion = 3.1.0
skipsdist = True
skip_missing_interpreters = true
# this allows tox to infer the base python from the environment name
# and override any basepython configured in this file
ignore_basepython_conflict=true
[testenv]
basepython = python3
usedevelop = True
install_command = pip install {opts} {packages}
setenv =
VIRTUAL_ENV={envdir}
OS_TEST_PATH=./cinderclient/tests/unit
OS_STDOUT_CAPTURE=1
OS_STDERR_CAPTURE=1
OS_TEST_TIMEOUT=60
passenv = *_proxy *_PROXY
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = find . -type f -name "*.pyc" -delete
stestr run {posargs}
stestr slowest
whitelist_externals = find
[testenv:pep8]
commands = flake8
[testenv:pylint]
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
pylint==1.9.1
commands = bash tools/lintstack.sh
whitelist_externals = bash
[testenv:venv]
commands = {posargs}
[testenv:cover]
setenv =
{[testenv]setenv}
PYTHON=coverage run --source cinderclient --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:docs]
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands = sphinx-build -W -b html doc/source doc/build/html
[testenv:pdf-docs]
deps =
{[testenv:docs]deps}
commands =
{[testenv:docs]commands}
sphinx-build -W -b latex doc/source doc/build/pdf
make -C doc/build/pdf
whitelist_externals =
make
cp
[testenv:releasenotes]
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:functional]
commands = stestr run {posargs}
setenv =
{[testenv]setenv}
OS_TEST_PATH = ./cinderclient/tests/functional
OS_VOLUME_API_VERSION = 3
# must define this here so it can be inherited by the -py3* environments
OS_CINDERCLIENT_EXEC_DIR = {envdir}/bin
# The OS_CACERT environment variable should be passed to the test
# environments to specify a CA bundle file to use in verifying a
# TLS (https) server certificate.
passenv = OS_*
[testenv:functional-py36]
setenv = {[testenv:functional]setenv}
passenv = {[testenv:functional]passenv}
commands = {[testenv:functional]commands}
[testenv:functional-py37]
setenv = {[testenv:functional]setenv}
passenv = {[testenv:functional]passenv}
commands = {[testenv:functional]commands}
[flake8]
show-source = True
ignore = H404,H405,E122,E123,E128,E251,W504
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
[testenv:lower-constraints]
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt