diff options
| author | Mark McLoughlin <markmc@redhat.com> | 2012-12-11 07:03:54 +0000 |
|---|---|---|
| committer | Mark McLoughlin <markmc@redhat.com> | 2012-12-11 07:21:40 +0000 |
| commit | 17bb753daaf43bad656ae88393da3c6709f4d8e3 (patch) | |
| tree | 34974a4ef4e5de4a694834d1c9fae5ca0608de68 /openstack/common/rpc | |
| parent | e6c576d9b08e96b0dcd6b630eefa84fa1bec9f16 (diff) | |
| download | oslo-17bb753daaf43bad656ae88393da3c6709f4d8e3.tar.gz oslo-17bb753daaf43bad656ae88393da3c6709f4d8e3.tar.xz oslo-17bb753daaf43bad656ae88393da3c6709f4d8e3.zip | |
Register the control_exchange RPC option
Fixes bug #1031725
Have the control_exchange option be registered by Oslo, but allow
projects to override the default of 'openstack' by doing e.g.:
rpc.set_defaults(control_exchange='nova')
Change-Id: Ic6e534d9a70a1cfc94207b78caa57e897cf78f63
Diffstat (limited to 'openstack/common/rpc')
| -rw-r--r-- | openstack/common/rpc/__init__.py | 16 | ||||
| -rw-r--r-- | openstack/common/rpc/amqp.py | 6 |
2 files changed, 9 insertions, 13 deletions
diff --git a/openstack/common/rpc/__init__.py b/openstack/common/rpc/__init__.py index e11fa16..902cea2 100644 --- a/openstack/common/rpc/__init__.py +++ b/openstack/common/rpc/__init__.py @@ -57,19 +57,19 @@ rpc_opts = [ cfg.BoolOpt('fake_rabbit', default=False, help='If passed, use a fake RabbitMQ provider'), - # - # The following options are not registered here, but are expected to be - # present. The project using this library must register these options with - # the configuration so that project-specific defaults may be defined. - # - #cfg.StrOpt('control_exchange', - # default='nova', - # help='AMQP exchange to connect to if using RabbitMQ or Qpid'), + cfg.StrOpt('control_exchange', + default='openstack', + help='AMQP exchange to connect to if using RabbitMQ or Qpid'), ] cfg.CONF.register_opts(rpc_opts) +def set_defaults(control_exchange): + cfg.set_defaults(rpc_opts, + control_exchange=control_exchange) + + def create_connection(new=True): """Create a connection to the message bus used for rpc. diff --git a/openstack/common/rpc/amqp.py b/openstack/common/rpc/amqp.py index 193b621..00b2f24 100644 --- a/openstack/common/rpc/amqp.py +++ b/openstack/common/rpc/amqp.py @@ -33,7 +33,6 @@ from eventlet import greenpool from eventlet import pools from eventlet import semaphore -from openstack.common import cfg from openstack.common import excutils from openstack.common.gettextutils import _ from openstack.common import local @@ -428,7 +427,4 @@ def cleanup(connection_pool): def get_control_exchange(conf): - try: - return conf.control_exchange - except cfg.NoSuchOptError: - return 'openstack' + return conf.control_exchange |
