Example #1
0
 def show(self, req, id):
     """Return capabilities list of given backend."""
     context = req.environ['cinder.context']
     authorize(context, 'capabilities')
     filters = {'host': id, 'binary': 'cinder-volume'}
     service = objects.ServiceList.get_all(context, filters)
     if not service:
         msg = (_("Can't find service: %s") % id)
         raise exception.NotFound(msg)
     try:
         capabilities = self.volume_api.get_capabilities(context, id, False)
     except oslo_messaging.MessagingTimeout:
         raise exception.RPCTimeout(service=id)
     return self._view_builder.summary(req, capabilities, id)
Example #2
0
 def show(self, req, id):
     """Return capabilities list of given backend."""
     context = req.environ['cinder.context']
     context.authorize(policy.CAPABILITIES_POLICY)
     filters = {'host_or_cluster': id, 'binary': constants.VOLUME_BINARY}
     services = objects.ServiceList.get_all(context, filters)
     if not services:
         msg = (_("Can't find service: %s") % id)
         raise exception.NotFound(msg)
     topic = services[0].service_topic_queue
     try:
         capabilities = self.volume_api.get_capabilities(context, topic,
                                                         False)
     except oslo_messaging.MessagingTimeout:
         raise exception.RPCTimeout(service=topic)
     return self._view_builder.summary(req, capabilities, topic)