diff options
| author | Russell Bryant <rbryant@redhat.com> | 2013-02-18 20:50:45 -0500 |
|---|---|---|
| committer | Russell Bryant <rbryant@redhat.com> | 2013-02-20 08:58:58 -0500 |
| commit | c2066facd0d5df60fc4129ff9e707175fda3fad1 (patch) | |
| tree | b15306d1c4c06b48671729151eb6d7db5d758150 /bin | |
| parent | 96a4518575ea550d8e997444bfc243b7a822ec11 (diff) | |
Sync rpc from oslo-incubator.
This includes the following changes:
* use oslo.config directly
* implementation of rpc-amqp-fast-reply-queue
* simplifications to bin/nova-rpc-zmq-receiver
* add new join_consumer_pool API call
* a bug fix to ensure kombu messages get acked even when an exception
occurs in the message callback
Change-Id: I813ce0ee7d5442d7b5b0f9d477949adabc83174e
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/nova-rpc-zmq-receiver | 32 |
1 files changed, 3 insertions, 29 deletions
diff --git a/bin/nova-rpc-zmq-receiver b/bin/nova-rpc-zmq-receiver index 13cd05df6..90b652b91 100755 --- a/bin/nova-rpc-zmq-receiver +++ b/bin/nova-rpc-zmq-receiver @@ -22,9 +22,6 @@ import contextlib import os import sys -from oslo.config import cfg -import zmq - # If ../nova/__init__.py exists, add ../ to Python search path, so that # it will override what happens to be installed in /usr/(local/)lib/python... POSSIBLE_TOPDIR = os.path.normpath(os.path.join(os.path.abspath(sys.argv[0]), @@ -33,45 +30,22 @@ POSSIBLE_TOPDIR = os.path.normpath(os.path.join(os.path.abspath(sys.argv[0]), if os.path.exists(os.path.join(POSSIBLE_TOPDIR, 'nova', '__init__.py')): sys.path.insert(0, POSSIBLE_TOPDIR) -from nova import config -from nova import exception +from oslo.config import cfg + from nova.openstack.common import log as logging from nova.openstack.common import rpc from nova.openstack.common.rpc import impl_zmq -from nova import utils CONF = cfg.CONF CONF.register_opts(rpc.rpc_opts) CONF.register_opts(impl_zmq.zmq_opts) +CONF(sys.argv[1:], project='nova') def main(): - config.parse_args(sys.argv) logging.setup("nova") - utils.monkey_patch() - - ipc_dir = CONF.rpc_zmq_ipc_dir - - # Create the necessary directories/files for this service. - if not os.path.isdir(ipc_dir): - try: - utils.execute('mkdir', '-p', ipc_dir, run_as_root=True) - utils.execute('chown', "%s:%s" % (os.getuid(), os.getgid()), - ipc_dir, run_as_root=True) - utils.execute('chmod', '750', ipc_dir, run_as_root=True) - except exception.ProcessExecutionError: - logging.error(_("Could not create IPC socket directory.")) - return with contextlib.closing(impl_zmq.ZmqProxy(CONF)) as reactor: - consume_in = "tcp://%s:%s" % \ - (CONF.rpc_zmq_bind_address, - CONF.rpc_zmq_port) - consumption_proxy = impl_zmq.InternalContext(None) - - reactor.register(consumption_proxy, - consume_in, zmq.PULL, out_bind=True) - reactor.consume_in_thread() reactor.wait() |
