Unblock tooz gate

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
This commit is contained in:
Ben Nemec 2019-05-09 20:20:13 +00:00
parent c02f9dd6c6
commit 8207427fff
3 changed files with 71 additions and 52 deletions

View File

@ -5,7 +5,6 @@
- lib-forward-testing-python3 - lib-forward-testing-python3
- openstack-cover-jobs - openstack-cover-jobs
- openstack-python-jobs - openstack-python-jobs
- openstack-python35-jobs
- openstack-python36-jobs - openstack-python36-jobs
- openstack-python37-jobs - openstack-python37-jobs
- periodic-stable-jobs - periodic-stable-jobs
@ -14,47 +13,47 @@
check: check:
jobs: jobs:
- tooz-tox-py27-etcd - tooz-tox-py27-etcd
- tooz-tox-py35-etcd - tooz-tox-py36-etcd
- tooz-tox-py27-etcd3 - tooz-tox-py27-etcd3
- tooz-tox-py35-etcd3 - tooz-tox-py36-etcd3
- tooz-tox-py27-etcd3gw - tooz-tox-py27-etcd3gw
- tooz-tox-py35-etcd3gw - tooz-tox-py36-etcd3gw
- tooz-tox-py27-zookeeper - tooz-tox-py27-zookeeper
- tooz-tox-py35-zookeeper - tooz-tox-py36-zookeeper
- tooz-tox-py27-redis - tooz-tox-py27-redis
- tooz-tox-py35-redis - tooz-tox-py36-redis
- tooz-tox-py27-sentinel - tooz-tox-py27-sentinel
- tooz-tox-py35-sentinel - tooz-tox-py36-sentinel
- tooz-tox-py27-memcached - tooz-tox-py27-memcached
- tooz-tox-py35-memcached - tooz-tox-py36-memcached
- tooz-tox-py27-postgresql - tooz-tox-py27-postgresql
- tooz-tox-py35-postgresql - tooz-tox-py36-postgresql
- tooz-tox-py27-mysql - tooz-tox-py27-mysql
- tooz-tox-py35-mysql - tooz-tox-py36-mysql
- tooz-tox-py27-consul - tooz-tox-py27-consul
- tooz-tox-py35-consul - tooz-tox-py36-consul
gate: gate:
jobs: jobs:
- tooz-tox-py27-etcd - tooz-tox-py27-etcd
- tooz-tox-py35-etcd - tooz-tox-py36-etcd
- tooz-tox-py27-etcd3 - tooz-tox-py27-etcd3
- tooz-tox-py35-etcd3 - tooz-tox-py36-etcd3
- tooz-tox-py27-etcd3gw - tooz-tox-py27-etcd3gw
- tooz-tox-py35-etcd3gw - tooz-tox-py36-etcd3gw
- tooz-tox-py27-zookeeper - tooz-tox-py27-zookeeper
- tooz-tox-py35-zookeeper - tooz-tox-py36-zookeeper
- tooz-tox-py27-redis - tooz-tox-py27-redis
- tooz-tox-py35-redis - tooz-tox-py36-redis
- tooz-tox-py27-sentinel - tooz-tox-py27-sentinel
- tooz-tox-py35-sentinel - tooz-tox-py36-sentinel
- tooz-tox-py27-memcached - tooz-tox-py27-memcached
- tooz-tox-py35-memcached - tooz-tox-py36-memcached
- tooz-tox-py27-postgresql - tooz-tox-py27-postgresql
- tooz-tox-py35-postgresql - tooz-tox-py36-postgresql
- tooz-tox-py27-mysql - tooz-tox-py27-mysql
- tooz-tox-py35-mysql - tooz-tox-py36-mysql
- tooz-tox-py27-consul - tooz-tox-py27-consul
- tooz-tox-py35-consul - tooz-tox-py36-consul
- job: - job:
name: tooz-tox-py27-consul name: tooz-tox-py27-consul
@ -119,6 +118,8 @@
Run tests using ``py27-redis`` environment. Run tests using ``py27-redis`` environment.
vars: vars:
tox_envlist: py27-redis tox_envlist: py27-redis
pre-run:
- playbooks/stop-redis.yaml
- job: - job:
name: tooz-tox-py27-sentinel name: tooz-tox-py27-sentinel
@ -127,6 +128,8 @@
Run tests using ``py27-sentinel`` environment. Run tests using ``py27-sentinel`` environment.
vars: vars:
tox_envlist: py27-sentinel tox_envlist: py27-sentinel
pre-run:
- playbooks/stop-redis.yaml
- job: - job:
name: tooz-tox-py27-zookeeper name: tooz-tox-py27-zookeeper
@ -137,81 +140,85 @@
tox_envlist: py27-zookeeper tox_envlist: py27-zookeeper
- job: - job:
name: tooz-tox-py35-consul name: tooz-tox-py36-consul
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-consul`` environment. Run tests using ``py36-consul`` environment.
vars: vars:
tox_envlist: py35-consul tox_envlist: py36-consul
- job: - job:
name: tooz-tox-py35-etcd name: tooz-tox-py36-etcd
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-etcd`` environment. Run tests using ``py36-etcd`` environment.
vars: vars:
tox_envlist: py35-etcd tox_envlist: py36-etcd
- job: - job:
name: tooz-tox-py35-etcd3 name: tooz-tox-py36-etcd3
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-etcd3`` environment. Run tests using ``py36-etcd3`` environment.
vars: vars:
tox_envlist: py35-etcd3 tox_envlist: py36-etcd3
- job: - job:
name: tooz-tox-py35-etcd3gw name: tooz-tox-py36-etcd3gw
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-etcd3gw`` environment. Run tests using ``py36-etcd3gw`` environment.
vars: vars:
tox_envlist: py35-etcd3gw tox_envlist: py36-etcd3gw
- job: - job:
name: tooz-tox-py35-memcached name: tooz-tox-py36-memcached
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-memcached`` environment. Run tests using ``py36-memcached`` environment.
vars: vars:
tox_envlist: py35-memcached tox_envlist: py36-memcached
- job: - job:
name: tooz-tox-py35-mysql name: tooz-tox-py36-mysql
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-mysql`` environment. Run tests using ``py36-mysql`` environment.
vars: vars:
tox_envlist: py35-mysql tox_envlist: py36-mysql
- job: - job:
name: tooz-tox-py35-postgresql name: tooz-tox-py36-postgresql
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-postgresql`` environment. Run tests using ``py36-postgresql`` environment.
vars: vars:
tox_envlist: py35-postgresql tox_envlist: py36-postgresql
- job: - job:
name: tooz-tox-py35-redis name: tooz-tox-py36-redis
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-redis`` environment. Run tests using ``py36-redis`` environment.
vars: vars:
tox_envlist: py35-redis tox_envlist: py36-redis
pre-run:
- playbooks/stop-redis.yaml
- job: - job:
name: tooz-tox-py35-sentinel name: tooz-tox-py36-sentinel
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-sentinel`` environment. Run tests using ``py36-sentinel`` environment.
vars: vars:
tox_envlist: py35-sentinel tox_envlist: py36-sentinel
pre-run:
- playbooks/stop-redis.yaml
- job: - job:
name: tooz-tox-py35-zookeeper name: tooz-tox-py36-zookeeper
parent: openstack-tox parent: openstack-tox
description: | description: |
Run tests using ``py35-zookeeper`` environment. Run tests using ``py36-zookeeper`` environment.
vars: vars:
tox_envlist: py35-zookeeper tox_envlist: py36-zookeeper

12
playbooks/stop-redis.yaml Normal file
View File

@ -0,0 +1,12 @@
# On Ubuntu, just installing the redis-server package starts Redis. As a
# result, when we try to start one via pifpaf it fails because the port
# is already in use.
# See https://bugs.launchpad.net/python-tooz/+bug/1828610
- hosts: all
name: Stop Redis server before running tests
tasks:
- name: Stop Redis
service:
name: redis-server
state: stopped
become: true

View File

@ -1,6 +1,6 @@
[tox] [tox]
minversion = 1.8 minversion = 1.8
envlist = py27,py35,py37,py{27,35}-{zookeeper,redis,sentinel,memcached,postgresql,mysql,consul,etcd,etcd3,etcd3gw},pep8 envlist = py27,py36,py37,py{27,36}-{zookeeper,redis,sentinel,memcached,postgresql,mysql,consul,etcd,etcd3,etcd3gw},pep8
[testenv] [testenv]
# We need to install a bit more than just `test' because those drivers have # We need to install a bit more than just `test' because those drivers have