python-tripleoclient/tox.ini
Sorin Sbarnea 377c081f40 Workaround py36 encoding pip bug
* ensures we add LC_ALL with UTF8 if not already set
* consolidate tox.ini indentation
* expose only generic py env on envlist
* sort envvars in tox

Change-Id: I3d01c5a19500db9a830c78193f82175b4c1d4361
Related: https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/804890/
2021-08-18 12:15:36 +01:00

96 lines
2.6 KiB
INI

[tox]
minversion = 3.18.0
envlist = pep8,py
skipsdist = True
# Automatic envs (pyXX) will only use the python version appropriate to that
# env and ignore basepython inherited from [testenv] if we set
# ignore_basepython_conflict.
ignore_basepython_conflict = True
[testenv]
basepython = python3
usedevelop = True
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}
passenv =
LANG
LANGUAGE
LC_*
TERM
setenv =
HOME={envdir}
# https://github.com/pypa/pip/issues/10219#issuecomment-900898020
LC_ALL={env:LC_ALL:en_US.UTF-8}
VIRTUAL_ENV={envdir}
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = stestr run {posargs}
[testenv:bindep]
# Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed
# separately, outside of the requirements files.
deps = bindep
commands = bindep test
[testenv:pep8]
deps = pre-commit
commands = pre-commit run -a
[testenv:venv]
commands = {posargs}
passenv = *
[testenv:cover]
setenv =
PYTHON=coverage run --source tripleoclient --parallel-mode
HOME={envdir}
commands =
coverage erase
stestr run --color {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
coverage report
[testenv:debug]
deps =
oslotest
{[testenv]deps}
commands = oslo_debug_helper -t tripleoclient/tests {posargs}
[testenv:docs]
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -a -E -W --keep-going -b html doc/source doc/build/html
[testenv:pdf-docs]
allowlist_externals = make
description =
Build PDF documentation.
envdir = {toxworkdir}/docs
deps = {[testenv:docs]deps}
commands =
sphinx-build -b latex doc/source doc/build/pdf
make -C doc/build/pdf
[testenv:genconfig]
setenv =
HOME={env:HOME:/home/stack}
commands =
oslo-config-generator --config-file config-generator/undercloud.conf
oslo-config-generator --config-file config-generator/standalone.conf
oslo-config-generator --config-file config-generator/minion.conf
[testenv:releasenotes]
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html