Merge "Search for service by type"
diff --git a/README.md b/README.md
index ebcb018..750190b 100644
--- a/README.md
+++ b/README.md
@@ -115,6 +115,16 @@
`mysql` is the default database.
+# RPC Backend
+
+Support for a RabbitMQ RPC backend is included. Additional RPC backends may
+be available via external plugins. Enabling or disabling RabbitMQ is handled
+via the usual service functions and ``ENABLED_SERVICES``.
+
+Example disabling RabbitMQ in ``local.conf``:
+
+ disable_service rabbit
+
# Apache Frontend
Apache web server can be enabled for wsgi services that support being deployed
diff --git a/inc/python b/inc/python
index ca185f0..54e19a7 100644
--- a/inc/python
+++ b/inc/python
@@ -203,7 +203,7 @@
function is_in_projects_txt {
local project_dir=$1
local project_name=$(basename $project_dir)
- return grep "/$project_name\$" $REQUIREMENTS_DIR/projects.txt >/dev/null
+ grep -q "/$project_name\$" $REQUIREMENTS_DIR/projects.txt
}
# ``pip install -e`` the package, which processes the dependencies
@@ -238,7 +238,9 @@
if [ -n "$REQUIREMENTS_DIR" ]; then
# Constrain this package to this project directory from here on out.
local name=$(awk '/^name.*=/ {print $3}' $project_dir/setup.cfg)
- $REQUIREMENTS_DIR/.venv/bin/edit-constraints $REQUIREMENTS_DIR/upper-constraints.txt -- $name "$flags $project_dir"
+ $REQUIREMENTS_DIR/.venv/bin/edit-constraints \
+ $REQUIREMENTS_DIR/upper-constraints.txt -- $name \
+ "$flags file://$project_dir#egg=$name"
fi
setup_package $project_dir $flags
diff --git a/lib/ceilometer b/lib/ceilometer
index ed9b933..163ed0b 100644
--- a/lib/ceilometer
+++ b/lib/ceilometer
@@ -360,16 +360,6 @@
fi
}
-# install_ceilometermiddleware() - Collect source and prepare
-function install_ceilometermiddleware {
- if use_library_from_git "ceilometermiddleware"; then
- git_clone_by_name "ceilometermiddleware"
- setup_dev_lib "ceilometermiddleware"
- else
- pip_install_gr ceilometermiddleware
- fi
-}
-
# start_ceilometer() - Start running processes, including screen
function start_ceilometer {
run_process ceilometer-acentral "$CEILOMETER_BIN_DIR/ceilometer-agent-central --config-file $CEILOMETER_CONF"
diff --git a/lib/ceph b/lib/ceph
index cbdc3b8..16dcda2 100644
--- a/lib/ceph
+++ b/lib/ceph
@@ -264,10 +264,6 @@
sudo ceph -c ${CEPH_CONF_FILE} auth get-or-create client.${GLANCE_CEPH_USER} mon "allow r" osd "allow class-read object_prefix rbd_children, allow rwx pool=${GLANCE_CEPH_POOL}" | sudo tee ${CEPH_CONF_DIR}/ceph.client.${GLANCE_CEPH_USER}.keyring
sudo chown ${STACK_USER}:$(id -g -n $whoami) ${CEPH_CONF_DIR}/ceph.client.${GLANCE_CEPH_USER}.keyring
- # NOTE(eharney): When Glance has fully migrated to Glance store,
- # default_store can be removed from [DEFAULT]. (See lib/glance.)
- iniset $GLANCE_API_CONF DEFAULT default_store rbd
- iniset $GLANCE_API_CONF DEFAULT show_image_direct_url True
iniset $GLANCE_API_CONF glance_store default_store rbd
iniset $GLANCE_API_CONF glance_store stores "file, http, rbd"
iniset $GLANCE_API_CONF glance_store rbd_store_ceph_conf $CEPH_CONF_FILE
diff --git a/lib/neutron_plugins/midonet b/lib/neutron_plugins/midonet
index 9e72aa0..ca0b70c 100644
--- a/lib/neutron_plugins/midonet
+++ b/lib/neutron_plugins/midonet
@@ -1,4 +1,10 @@
#!/bin/bash
-# REVISIT(devvesa): This file is intentionally left empty
-# in order to keep Q_PLUGIN=midonet work.
+# REVISIT(devvesa): This file is needed so Q_PLUGIN=midonet will work.
+
+# FIXME(yamamoto): This function should not be here, but unfortunately
+# devstack calls it before the external plugins are fetched
+function has_neutron_plugin_security_group {
+ # 0 means True here
+ return 0
+}
diff --git a/lib/swift b/lib/swift
index 5b73981..3207fac 100644
--- a/lib/swift
+++ b/lib/swift
@@ -697,6 +697,21 @@
fi
}
+# install_ceilometermiddleware() - Collect source and prepare
+# note that this doesn't really have anything to do with ceilometer;
+# though ceilometermiddleware has ceilometer in its name as an
+# artifact of history, it is not a ceilometer specific tool. It
+# simply generates pycadf-based notifications about requests and
+# responses on the swift proxy
+function install_ceilometermiddleware {
+ if use_library_from_git "ceilometermiddleware"; then
+ git_clone_by_name "ceilometermiddleware"
+ setup_dev_lib "ceilometermiddleware"
+ else
+ pip_install_gr ceilometermiddleware
+ fi
+}
+
# start_swift() - Start running processes, including screen
function start_swift {
# (re)start memcached to make sure we have a clean memcache.
diff --git a/stackrc b/stackrc
index 9fb334a..342f9bf 100644
--- a/stackrc
+++ b/stackrc
@@ -154,7 +154,7 @@
#
# - True : use upper-constraints.txt to constrain versions of packages intalled
# and do not edit projects at all.
-USE_CONSTRAINTS=${USE_CONSTRAINTS:-False}
+USE_CONSTRAINTS=$(trueorfalse False USE_CONSTRAINTS)
# Repositories
# ------------
diff --git a/tools/update_clouds_yaml.py b/tools/update_clouds_yaml.py
index 0862135..3a364fe 100755
--- a/tools/update_clouds_yaml.py
+++ b/tools/update_clouds_yaml.py
@@ -43,6 +43,9 @@
'project_name': args.os_project_name,
},
}
+ if args.os_identity_api_version == '3':
+ self._cloud_data['auth']['user_domain_id'] = 'default'
+ self._cloud_data['auth']['project_domain_id'] = 'default'
if args.os_cacert:
self._cloud_data['cacert'] = args.os_cacert