cinder: configure dlm when this one is zookeeper

Previous this was set the zake, but that was revert to missing
dependencies issue and because zake is a test fixture and not somthing
to deploy.

This change configures the Cinder dlm with this one is zookeeper.
And it installs tooz and the extra dependencies needed for the
zookeeper driver.

To do it, this commit have to introduce a new method for package
installation: 'pip_install_gr_extras package extra1,extra2'.

Change-Id: Idca310c08e345db59840eb31434c6cb1f849fa70
This commit is contained in:
Mehdi Abaakouk 2016-12-01 16:11:17 +01:00
parent 72bfe17b6a
commit 52b1074615
3 changed files with 22 additions and 0 deletions

View File

@ -69,6 +69,20 @@ function pip_install_gr {
pip_install $clean_name
}
# Wrapper for ``pip install`` that only installs versions of libraries
# from the global-requirements specification with extras.
#
# Uses globals ``REQUIREMENTS_DIR``
#
# pip_install_gr_extras packagename extra1,extra2,...
function pip_install_gr_extras {
local name=$1
local extras=$2
local clean_name
clean_name=$(get_from_global_requirements $name)
pip_install $clean_name[$extras]
}
# Determine the python versions supported by a package
function get_python_versions_for_package {
local name=$1

View File

@ -373,6 +373,13 @@ function configure_cinder {
iniset $CINDER_CONF DEFAULT os_privileged_user_password "$SERVICE_PASSWORD"
iniset $CINDER_CONF DEFAULT os_privileged_user_tenant "$SERVICE_PROJECT_NAME"
iniset $CINDER_CONF DEFAULT graceful_shutdown_timeout "$SERVICE_GRACEFUL_SHUTDOWN_TIMEOUT"
# Set the backend url according to the configured dlm backend
if is_dlm_enabled; then
if [[ "$(dlm_backend)" == "zookeeper" ]]; then
iniset $CINDER_CONF coordination backend_url "zookeeper://${SERVICE_HOST}:2181"
fi
fi
}
# create_cinder_accounts() - Set up common required cinder accounts

View File

@ -91,6 +91,7 @@ function configure_dlm {
# install_dlm() - Collect source and prepare
function install_dlm {
if is_dlm_enabled; then
pip_install_gr_extras tooz zookeeper
if is_ubuntu; then
install_package zookeeperd
elif is_fedora; then