f139eb258d
Currently Kafka driver for an oslo.messaging uses kafka-python==0.9.5 and mostly broken. This package version supports only low level Kafka producer and consumer API which are marked as deprecated now [1]. Using of these interfaces bring a big concern to the message processing, because current KafkaConsumer has not any consuming coordination. This fact causes a message duplication for the several consumers of one topic. This behavior is specific to Ceilometer and services which read and process notifications from other services. New version of kafka-python allows to use async thread safe message producers and coordinated consumers [1]. [1] http://kafka-python.readthedocs.io/en/master/changelog.html#feb-15-2016 The driver is currently experimental, python-kafka<1.0.0 API have major issue described above that can't make the oslo.messaging driver works, so we prefer having a working driver with a non-synced dependencies, that the reverse. Co-Authored-By: Mehdi Abaakouk <sileht@redhat.com> Change-Id: I29862ed7bf56b9d8878fa8e9fb1cbd9d643908a4
38 lines
1.4 KiB
Bash
Executable File
38 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Client constraint file contains this client version pin that is in conflict
|
|
# with installing the client from source. We should remove the version pin in
|
|
# the constraints file before applying it for from-source installation.
|
|
|
|
CONSTRAINTS_FILE=$1
|
|
shift 1
|
|
|
|
set -e
|
|
|
|
# NOTE(tonyb): Place this in the tox enviroment's log dir so it will get
|
|
# published to logs.openstack.org for easy debugging.
|
|
localfile="$VIRTUAL_ENV/log/upper-constraints.txt"
|
|
|
|
if [[ $CONSTRAINTS_FILE != http* ]]; then
|
|
CONSTRAINTS_FILE=file://$CONSTRAINTS_FILE
|
|
fi
|
|
# NOTE(tonyb): need to add curl to bindep.txt if the project supports bindep
|
|
curl $CONSTRAINTS_FILE --insecure --progress-bar --output $localfile
|
|
|
|
pip install -c$localfile openstack-requirements
|
|
|
|
# This is the main purpose of the script: Allow local installation of
|
|
# the current repo. It is listed in constraints file and thus any
|
|
# install will be constrained and we need to unconstrain it.
|
|
edit-constraints $localfile -- $CLIENT_NAME
|
|
|
|
pip install -c$localfile -U $*
|
|
# NOTE(sileht) temporary overrided since requirements repo cap it to <1.0.0
|
|
# due to monasca project that have some concern with newer version.
|
|
# The driver is currently experimental, python-kafka<1.0.0 API have major issue
|
|
# that can't make the oslo.messaging driver works, so we prefer having a working
|
|
# driver with a non-synced dep, that the reverse
|
|
pip install -U 'kafka-python>=1.3.1'
|
|
|
|
exit $?
|