Files
python-keystoneclient/tox.ini
Andreas Jaeger a9d01eef93 Fix docs publishing
Use sphinx-build so that the output happens in the right place.

Remove ChangeLog, instead link to the release notes.
Use apidoc for API doc building.

Fix main index page display so that title has higher level,
use link to OpenDev.

Change-Id: Iaa8d7f2143d411be31ad10b546455f18015566f3
2020-04-15 11:53:00 +02:00

102 lines
2.8 KiB
INI

[tox]
minversion = 3.1.1
skipsdist = True
envlist = py37,pep8,releasenotes
ignore_basepython_conflict = True
[testenv]
usedevelop = True
install_command = pip install {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
OS_STDOUT_NOCAPTURE=False
OS_STDERR_NOCAPTURE=False
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 --slowest {posargs}
whitelist_externals = find
basepython = python3
[testenv:pep8]
commands =
flake8
bandit -r keystoneclient -x tests -n5
[testenv:bandit]
# NOTE(browne): This is required for the integration test job of the bandit
# project. Please do not remove.
commands = bandit -r keystoneclient -x tests -n5
[testenv:venv]
commands = {posargs}
[testenv:cover]
setenv =
PYTHON=coverage run --source keystoneclient --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
coverage report
[testenv:debug]
commands = oslo_debug_helper -t keystoneclient/tests {posargs}
[testenv:functional]
setenv = {[testenv]setenv}
OS_TEST_PATH=./keystoneclient/tests/functional
passenv = OS_*
[flake8]
# D100: Missing docstring in public module
# D101: Missing docstring in public class
# D102: Missing docstring in public method
# D103: Missing docstring in public function
# D104: Missing docstring in public package
# D203: 1 blank line required before class docstring (deprecated in pep257)
# W504 line break after binary operator
ignore = D100,D101,D102,D103,D104,D203,W504
show-source = True
exclude = .venv,.tox,dist,doc,*egg,build
[testenv:docs]
commands = sphinx-build -W -b html doc/source doc/build/html
deps = -r{toxinidir}/doc/requirements.txt
[testenv:pdf-docs]
envdir = {toxworkdir}/docs
deps = {[testenv:docs]deps}
whitelist_externals =
make
rm
commands =
rm -rf doc/build/pdf
sphinx-build -W -b latex doc/source doc/build/pdf
make -C doc/build/pdf
[testenv:releasenotes]
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
deps = -r{toxinidir}/doc/requirements.txt
[hacking]
import_exceptions =
keystoneclient.i18n
[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:lower-constraints]
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt