def _real_cast(self, method_name, value): try: for _key in self._get_routing_key(): rpc.cast(self.context, _key, {"method": method_name, "args": value}) except Exception as e: LOG.error(e) raise exception.TaskManagerError(original_message=str(e))
def _real_cast(self, method_name, **kwargs): try: rpc.cast(self.context, self._get_routing_key(), {"method": method_name, "args": kwargs}) except Exception as e: LOG.error(e) raise exception.TaskManagerError(original_message=str(e))
def cast(self, context, msg, topic=None, version=None): """rpc.cast() a remote method. :param context: The request context :param msg: The message to send, including the method and args. :param topic: Override the topic for this message. :param version: (Optional) Override the requested API version in this message. :returns: None. rpc.cast() does not wait on any return value from the remote method. """ self._set_version(msg, version) rpc.cast(context, self._get_topic(topic), msg)
def cast(self, context, msg, topic=None, version=None): """rpc.cast() a remote method. :param context: The request context :param msg: The message to send, including the method and args. :param topic: Override the topic for this message. :param version: (Optional) Override the requested API version in this message. :returns: None. rpc.cast() does not wait on any return value from the remote method. """ self._set_version(msg, version) msg['args'] = self._serialize_msg_args(context, msg['args']) rpc.cast(context, self._get_topic(topic), msg)
def delete_by_rpc(self, origin_instance_id): self.tvclient = trove_client(CONF.os_rpc_username, CONF.os_rpc_password, CONF.os_rpc_tenant_name) rpc.cast(self.__get_context(), "taskmanager", {"method": "delete_instance", "args": {'instance_id': origin_instance_id}})
def migrate_by_rpc(self, origin_instance_id, force_host = None, backup_id = None, flavor_id = None): self.tvclient = trove_client(CONF.os_rpc_username, CONF.os_rpc_password, CONF.os_rpc_tenant_name) _ret = rpc.cast(self.__get_context(), "taskmanager", {"method": "migrate", "args": {'migrate_id':origin_instance_id, 'host':force_host}}) return _ret