refstack/tox.ini
Luz Cazares b041333bc7 Add support for new doc PTI jobs
Implement optional cleanup to support the new PTI jobs
for documentation which won't use tox anymore.

Docs tox environment will still available for developers but
it is no loger used in the gate to construct the documentation.

See http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html

Change-Id: Ib4a380eec3c9f286dc563f2b81c6b27f92467cf3
2017-12-18 15:46:17 -08:00

96 lines
3.0 KiB
INI

[tox]
# py3* tests should be run before py27
# it is a workaround for testr bug
# https://bugs.launchpad.net/testrepository/+bug/1229445
envlist = py35,py27,pep8,pip-check-reqs
minversion = 1.6
skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ALL=C
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = /bin/rm -f .testrepository/times.dbm
python setup.py testr --slowest --testr-args='{posargs}'
distribute = false
[testenv:py27-func-mysql]
basepython = python2.7
setenv = SUBUNIT_TEST_PATH=./refstack/tests/api
# Integration/functional tests
# must not be run in parallel (--concurrency=1),
# because each of these tests
# require cleanup of database
commands = {toxinidir}/setup-mysql-tests.sh python setup.py testr --slowest --testr-args='{posargs:--concurrency=1}'
[testenv:py35-func-mysql]
basepython = python3.5
setenv = SUBUNIT_TEST_PATH=./refstack/tests/api
# Integration/functional tests
# must not be run in parallel (--concurrency=1),
# because each of these tests
# require cleanup of database
commands = {toxinidir}/setup-mysql-tests.sh python setup.py testr --slowest --testr-args='{posargs:--concurrency=1}'
[testenv:pep8]
commands =
flake8 {posargs}
flake8 --filename=refstack* bin
pep257 refstack
distribute = false
[testenv:genconfig]
commands =
oslo-config-generator --output-file etc/refstack.conf.sample \
--namespace refstack \
--namespace oslo.db \
--namespace oslo.log
[testenv:venv]
commands = {posargs}
[testenv:gen-cover]
commands = python setup.py testr --coverage \
--omit='{toxinidir}/refstack/tests*,{toxinidir}/refstack/api/config.py,{toxinidir}/refstack/db/migrations/alembic/*,{toxinidir}/refstack/opts.py' \
--testr-args='{posargs}'
[testenv:cover]
commands = {toxinidir}/tools/cover.sh {posargs}
[testenv:docs]
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -b html doc/source doc/build/html
[flake8]
# E125 continuation line does not distinguish itself from next logical line
# H404 multi line docstring should start with a summary
ignore = E125,H404
enable-extensions = H203
show-source = true
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
[testenv:pip-check-reqs]
# Do not install test-requirements as that will pollute the virtualenv for
# determining missing packages.
# This also means that pip-check-reqs must be installed separately, outside
# of the requirements.txt files
deps = pip_check_reqs
-r{toxinidir}/requirements.txt
commands=
pip-extra-reqs -d --ignore-file=refstack/tests/* refstack
pip-missing-reqs -d --ignore-file=refstack/tests/* refstack
[testenv:debug]
commands = oslo_debug_helper -t refstack/tests/unit {posargs}
[testenv:debug35]
basepython = python3.5
commands = oslo_debug_helper -t refstack/tests/unit {posargs}