python-monascaclient/tox.ini
Doug Hellmann d4541971c3 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: I9c427d9186e3e27b74d790839b1eb623769f57ec
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-06-13 15:39:32 -04:00

107 lines
2.6 KiB
INI

[tox]
envlist = py{27,35},pypy,cover,pep8
minversion = 2.5
skipsdist = True
[testenv]
setenv =
VIRTUAL_ENV={envdir}
OS_TEST_PATH=monascaclient/tests
PYTHONWARNINGS=default::DeprecationWarning
passenv = *_proxy
*_PROXY
usedevelop = True
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}/test-requirements.txt
whitelist_externals = bash
find
rm
commands =
find {toxinidir} -type f -name "*.pyc" -delete
stestr run {posargs}
[testenv:cover]
basepython = python2.7
commands =
coverage erase
python setup.py test --coverage --testr-args='{posargs}' \
--coverage-package-name=monascaclient --omit=monascaclient/tests/*
coverage report
[testenv:debug]
basepython = python3
commands = oslo_debug_helper -t {env:OS_TEST_PATH} {posargs}
[testenv:pep8]
basepython = python3
skip_install = True
usedevelop = False
commands =
{[testenv:flake8]commands}
{[testenv:bandit]commands}
{[testenv:checkniceness]commands}
[testenv:flake8]
basepython = python3
skip_install = True
usedevelop = False
commands = flake8 monascaclient
[testenv:bandit]
basepython = python3
skip_install = True
usedevelop = False
commands = bandit -r monascaclient -n5 -x {env:OS_TEST_PATH}
[testenv:docs]
basepython = python3
description = Builds full monascaclient documentation
commands =
{[testenv:devdocs]commands}
{[testenv:releasenotes]commands}
[testenv:devdocs]
basepython = python3
description = Builds developer documentation
commands =
rm -rf {toxinidir}/doc/build {toxinidir}/doc/source/contributor/api
python setup.py build_sphinx
[testenv:releasenotes]
basepython = python3
description = Called from CI script to test and publish the Release Notes
commands =
rm -rf releasenotes/build
sphinx-build -a -E -d {toxinidir}/releasenotes/build/doctrees -b html \
{toxinidir}/releasenotes/source {toxinidir}/releasenotes/build/html
[testenv:checkniceness]
basepython = python3
description = Validates (pep-like) documenation
commands =
doc8 --file-encoding utf-8 {toxinidir}/doc
doc8 --file-encoding utf-8 {toxinidir}/releasenotes
[testenv:venv]
basepython = python3
commands = {posargs}
[hacking]
import_exceptions =
six.moves
[flake8]
show-source = True
max-line-length = 100
builtins = _
exclude=.venv,.git,.tox,dist,client_api_example.py,*lib/python*,*egg,build
[testenv:lower-constraints]
basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt