def wrap(self, context, *args, **kwargs): server = kwargs.get('share_server') if not self.driver_handles_share_servers: if not server: server = self.service_instance_manager.get_common_server() kwargs['share_server'] = server else: raise exception.ManilaException( _("Share server handling is not available. " "But 'share_server' was provided. '%s'. " "Share network should not be used.") % server.get('id')) elif not server: raise exception.ManilaException( _("Share server handling is enabled. But 'share_server' " "is not provided. Make sure you used 'share_network'.")) if not server.get('backend_details'): raise exception.ManilaException( _("Share server '%s' does not have backend details.") % server['id']) if not self.service_instance_manager.ensure_service_instance( context, server['backend_details']): raise exception.ServiceInstanceUnavailable() return f(self, context, *args, **kwargs)
def wrap(self, *args, **kwargs): server = kwargs.get('share_server') context = args[0] if not server: # For now generic driver does not support flat networking. # When we implement flat networking in generic driver # we will not need share server to be passed and # will change this logic. raise exception.ManilaException(_('Share server not found.')) if not server.get('backend_details'): raise exception.ManilaException(_('Share server backend ' 'details missing.')) if not self.service_instance_manager.ensure_service_instance( context, server['backend_details']): raise exception.ServiceInstanceUnavailable() return f(self, *args, **kwargs)