Files
zuul/tox.ini
Tobias Henkel 3aa0d9ed8a Support databases on other hosts during tests
In some setups (e.g. docker based) the test databases are not on
localhost. Allow overriding this like it is done for other zk hosts.

Also don't create test accounts with unencrypted passwords. This is no
longer supported in recent postgres versions.

Change-Id: I22ad29b31c7c51c117543eb05c3bfc0f5555562c
2018-05-25 09:29:21 -07:00

87 lines
2.6 KiB
INI

[tox]
minversion = 1.6
skipsdist = True
envlist = pep8,py35
[testenv]
basepython = python3
setenv = VIRTUAL_ENV={envdir}
OS_TEST_TIMEOUT=150
OS_STDOUT_CAPTURE={env:OS_STDOUT_CAPTURE:1}
OS_STDERR_CAPTURE={env:OS_STDERR_CAPTURE:1}
OS_LOG_CAPTURE={env:OS_LOG_CAPTURE:1}
OS_LOG_DEFAULTS={env:OS_LOG_DEFAULTS:""}
passenv = ZUUL_TEST_ROOT
OS_STDOUT_CAPTURE
OS_STDERR_CAPTURE
OS_LOG_CAPTURE
OS_LOG_DEFAULTS
NODEPOOL_ZK_HOST
ZUUL_MYSQL_HOST
ZUUL_POSTGRES_HOST
usedevelop = True
install_command = pip install {opts} {packages}
whitelist_externals = bash
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = stestr run {posargs}
stestr slowest
[nodeenv]
install_command = bash tools/pip.sh {opts} {packages}
[testenv:py35]
install_command = {[nodeenv]install_command}
[testenv:py36]
install_command = {[nodeenv]install_command}
[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]
# --ignore-missing-imports tells mypy to not try to follow imported modules
# out of the current tree. As you might expect, we don't want to run static
# type checking on the world - just on ourselves.
commands =
flake8 {posargs}
mypy --ignore-missing-imports zuul
[testenv:cover]
install_command = {[nodeenv]install_command}
setenv =
{[testenv]setenv}
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:docs]
commands =
sphinx-build -W -d doc/build/doctrees -b html doc/source/ doc/build/html
[testenv:venv]
commands = {posargs}
[testenv:nodepool]
install_command = {[nodeenv]install_command}
commands = stestr run --concurrency=1 --test-path ./tests/nodepool {posargs}
[testenv:remote]
commands = stestr run --concurrency=1 --test-path ./tests/remote {posargs}
passenv = ZUUL_TEST_ROOT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE OS_LOG_DEFAULTS ZUUL_REMOTE_IPV4 ZUUL_SSH_KEY NODEPOOL_ZK_HOST
install_command = {[nodeenv]install_command}
[flake8]
# These are ignored intentionally in openstack-infra projects;
# please don't submit patches that solely correct them or enable them.
ignore = E124,E125,E129,E402,E741,H,W503
show-source = True
exclude = .venv,.tox,dist,doc,build,*.egg,node_modules