8207427fff
This is a squash of two commits needed to get gate tests passing again on tooz. See below for details: Move testing to py36 The base infra images no longer have python 3.5 available and are all failing. We should be testing on py36 now anyway since that is the minimum supported version for Train. Stop redis-server before running tests Just installing redis-server on Ubuntu Bionic starts the service, which means when we try to start one via pifpaf it fails due to the port already being in use. This change adds a pre-run playbook that stops the redis-server service so ours can run successfully. Change-Id: I3f7f7ea9069d8c890a82f31ad14c9663e98c09dc Closes-Bug: 1828610
107 lines
3.3 KiB
INI
107 lines
3.3 KiB
INI
[tox]
|
|
minversion = 1.8
|
|
envlist = py27,py36,py37,py{27,36}-{zookeeper,redis,sentinel,memcached,postgresql,mysql,consul,etcd,etcd3,etcd3gw},pep8
|
|
|
|
[testenv]
|
|
# We need to install a bit more than just `test' because those drivers have
|
|
# custom tests that we always run
|
|
deps = .[test,zake,ipc,memcached,mysql,etcd,etcd3,etcd3gw]
|
|
zookeeper: .[zookeeper]
|
|
redis: .[redis]
|
|
sentinel: .[redis]
|
|
memcached: .[memcached]
|
|
postgresql: .[postgresql]
|
|
mysql: .[mysql]
|
|
etcd: .[etcd]
|
|
etcd3: .[etcd3]
|
|
etcd3gw: .[etcd3gw]
|
|
consul: .[consul]
|
|
setenv =
|
|
TOOZ_TEST_URLS = file:///tmp zake:// ipc://
|
|
zookeeper: TOOZ_TEST_DRIVERS = zookeeper
|
|
redis: TOOZ_TEST_DRIVERS = redis
|
|
sentinel: TOOZ_TEST_DRIVERS = redis --sentinel
|
|
memcached: TOOZ_TEST_DRIVERS = memcached
|
|
mysql: TOOZ_TEST_DRIVERS = mysql
|
|
postgresql: TOOZ_TEST_DRIVERS = postgresql
|
|
etcd: TOOZ_TEST_DRIVERS = etcd,etcd --cluster
|
|
etcd3: TOOZ_TEST_DRIVERS = etcd
|
|
etcd3: TOOZ_TEST_ETCD3 = 1
|
|
etcd3gw: TOOZ_TEST_DRIVERS = etcd
|
|
etcd3gw: TOOZ_TEST_ETCD3GW = 1
|
|
consul: TOOZ_TEST_DRIVERS = consul
|
|
# NOTE(tonyb): This project has chosen to *NOT* consume upper-constraints.txt
|
|
commands =
|
|
{toxinidir}/run-tests.sh {toxinidir}/tools/pretty_tox.sh "{posargs}"
|
|
{toxinidir}/run-examples.sh
|
|
|
|
[testenv:py27]
|
|
basepython = python2.7
|
|
|
|
[testenv:venv]
|
|
basepython = python3
|
|
# This target is used by the gate go run Sphinx to build the doc
|
|
deps = {[testenv:docs]deps}
|
|
commands = {posargs}
|
|
|
|
[testenv:cover]
|
|
basepython = python3
|
|
# NOTE(bnemec): Unfortunately, referencing testenv deps doesn't work here, so
|
|
# we have to duplicate the entire list.
|
|
# See https://github.com/tox-dev/tox/issues/706
|
|
deps = .[test,zake,ipc,memcached,mysql,etcd,etcd3,etcd3gw]
|
|
zookeeper: .[zookeeper]
|
|
redis: .[redis]
|
|
sentinel: .[redis]
|
|
memcached: .[memcached]
|
|
postgresql: .[postgresql]
|
|
mysql: .[mysql]
|
|
etcd: .[etcd]
|
|
etcd3: .[etcd3]
|
|
etcd3gw: .[etcd3gw]
|
|
consul: .[consul]
|
|
coverage
|
|
setenv =
|
|
PYTHON=coverage run --source tooz --parallel-mode
|
|
TOOZ_TEST_URLS = file:///tmp zake:// ipc://
|
|
zookeeper: TOOZ_TEST_DRIVERS = zookeeper
|
|
redis: TOOZ_TEST_DRIVERS = redis
|
|
sentinel: TOOZ_TEST_DRIVERS = redis --sentinel
|
|
memcached: TOOZ_TEST_DRIVERS = memcached
|
|
mysql: TOOZ_TEST_DRIVERS = mysql
|
|
postgresql: TOOZ_TEST_DRIVERS = postgresql
|
|
etcd: TOOZ_TEST_DRIVERS = etcd,etcd --cluster
|
|
etcd3: TOOZ_TEST_DRIVERS = etcd
|
|
etcd3: TOOZ_TEST_ETCD3 = 1
|
|
etcd3gw: TOOZ_TEST_DRIVERS = etcd
|
|
etcd3gw: TOOZ_TEST_ETCD3GW = 1
|
|
consul: TOOZ_TEST_DRIVERS = consul
|
|
commands =
|
|
{toxinidir}/run-tests.sh {toxinidir}/tools/pretty_tox.sh "{posargs}"
|
|
{toxinidir}/run-examples.sh
|
|
coverage combine
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
|
|
[testenv:docs]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
commands = sphinx-build -W -b html doc/source doc/build/html
|
|
|
|
[testenv:pep8]
|
|
basepython = python3
|
|
deps = hacking<0.13,>=0.12
|
|
doc8
|
|
commands =
|
|
flake8
|
|
doc8 doc/source
|
|
|
|
[flake8]
|
|
exclude=.venv,.git,.tox,dist,*egg,*.egg-info,build,examples,doc
|
|
show-source = True
|
|
|
|
[testenv:releasenotes]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|