Provide bindep_profile in openstack-tox job setup

Oslo.messaging uses a single bindep.txt to define common
and driver dependencies. The bindep_profile is used by the
bindep role to select the driver specific packages.

This patch:
* Add bindep_profile var to jobs
* Add kafka dependencies
* update test-setup for use by amqp1

Depends-On: I6beb7b07a7dbc345e63e758ebbc86400e0ee16d3
Change-Id: Ib552152e841a9fc0bffdcb7c3f7bc75613d0ed62
This commit is contained in:
Andrew Smith 2017-11-28 11:10:20 -05:00
parent 7c65038e79
commit 0ca9567c4a
3 changed files with 21 additions and 9 deletions

View File

@ -9,36 +9,42 @@
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-kafka
bindep_profile: kafka
- job:
name: oslo.messaging-tox-py27-func-pika
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-pika
bindep_profile: pika
- job:
name: oslo.messaging-tox-py27-func-rabbit
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-rabbit
bindep_profile: rabbit
- job:
name: oslo.messaging-tox-py27-func-zmq
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-zmq
bindep_profile: zmq
- job:
name: oslo.messaging-tox-py27-func-zmq-proxy
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-zmq-proxy
bindep_profile: zmq
- job:
name: oslo.messaging-tox-py27-func-zmq-pubsub
parent: openstack-tox-py27
vars:
tox_envlist: py27-func-zmq-pubsub
bindep_profile: zmq
- job:
name: oslo.messaging-tox-py35-func-amqp1
@ -51,12 +57,14 @@
parent: openstack-tox-py35
vars:
tox_envlist: py35-func-rabbit
bindep_profile: rabbit
- job:
name: oslo.messaging-tox-py35-func-zmq
parent: openstack-tox-py35
vars:
tox_envlist: py35-func-zmq
bindep_profile: zmq
- job:
name: oslo.messaging-src-dsvm-full-rabbit-default

View File

@ -34,3 +34,9 @@ cyrus-sasl-lib [platform:rpm amqp1]
cyrus-sasl-plain [platform:rpm amqp1]
libuuid-devel [platform:rpm amqp1]
swig [platform:rpm amqp1]
# kafka dpkg
openjdk-8-jdk [platform:dpkg kafka]
# kafka rpm
java-1.8.0-openjdk [platform:rpm kafka]

View File

@ -4,7 +4,7 @@
# it sets up the test system as needed.
# Developer should setup their test systems in a similar way.
# This setup needs to be run by a user that can run sudo.
# This setup for amqp1 needs to be run by a user that can run sudo.
function is_fedora {
[ -f /usr/bin/yum ] && cat /etc/*release | grep -q -e "Fedora"
@ -14,14 +14,12 @@ function is_fedora {
# because tox doesn't have a quiet option...
tox -ebindep --notest
# TODO(kgiusti) for now install all profile deps, need to fix this to
# install only the deps needed by the particular test's profile
PROFILES="rabbit zmq amqp1"
PACKAGES=
for PROFILE in $PROFILES; do
# NOTE(sileht): bindep return 1 if some packages have to be installed
PACKAGES="$PACKAGES $(.tox/bindep/bin/bindep -b -f bindep.txt $PROFILE || true)"
done
# TODO(ansmith) for now setup amqp1 dependencies for any profile.
# Fix this when test-setup is passed environment profile setting.
# NOTE(sileht): bindep return 1 if some packages have to be installed
PACKAGES="$(.tox/bindep/bin/bindep -b -f bindep.txt amqp1 || true)"
[ -n "$PACKAGES" ] || exit 0
# inspired from project-config install-distro-packages.sh