Beispiel #1
0
 def handle_create(self, cxt, resource, name):
     try:
         cli = self._get_client(cxt)
         return cli.create_fake_res(name)
     except FakeException:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable(FAKE_TYPE, cli.endpoint)
Beispiel #2
0
 def handle_list(self, cxt, resource, filters):
     try:
         cli = self._get_client(cxt)
         return cli.list_fake_res(
             resource_handle._transform_filters(filters))
     except FakeException:
         raise exceptions.EndpointNotAvailable(FAKE_TYPE, cli.endpoint)
Beispiel #3
0
 def handle_action(self, cxt, resource, action, name, rename):
     try:
         cli = self._get_client(cxt)
         cli.action_fake_res(name, rename)
     except FakeException:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable(FAKE_TYPE, cli.endpoint)
Beispiel #4
0
 def handle_update(self, cxt, resource, *args, **kwargs):
     try:
         client = self._get_client(cxt)
         return getattr(client, 'update_%s' % resource)(*args,
                                                        **kwargs)[resource]
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
Beispiel #5
0
 def handle_action(self, cxt, resource, action, *args, **kwargs):
     try:
         client = self._get_client(cxt)
         return getattr(client, '%s_%s' % (action, resource))(*args,
                                                              **kwargs)
     except q_exceptions.ConnectionFailed:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
 def handle_list(self, cxt, resource, filters):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         return [res.to_dict() for res in getattr(
             client, collection).list(filters=_transform_filters(filters))]
     except g_exceptions.InvalidEndpoint:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('glance',
                                               client.http_client.endpoint)
 def handle_action(self, cxt, resource, action, *args, **kwargs):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         resource_manager = getattr(client, collection)
         getattr(resource_manager, action)(*args, **kwargs)
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('cinder',
                                               client.client.management_url)
Beispiel #8
0
 def handle_action(self, cxt, resource, action, *args, **kwargs):
     try:
         client = self._get_client(cxt)
         func_name = '%s_%s' % (action, resource)
         if not hasattr(client, func_name):
             func_name = '%s_%s' % (resource, action)
         return getattr(client, func_name)(*args, **kwargs)
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
Beispiel #9
0
 def handle_delete(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         return getattr(client, 'delete_%s' % resource)(resource_id)
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
     except q_exceptions.NotFound:
         LOG.debug("Delete %(resource)s %(resource_id)s which not found",
                   {'resource': resource, 'resource_id': resource_id})
Beispiel #10
0
 def handle_list(self, cxt, resource, filters):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         search_opts = _transform_filters(filters)
         return [res for res in getattr(
             client, 'list_%s' % collection)(**search_opts)[collection]]
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
 def handle_create(self, cxt, resource, *args, **kwargs):
     try:
         resource = self._adapt_resource(resource)
         client = self._get_client(cxt)
         collection = '%ss' % resource
         return getattr(client, collection).create(
             *args, **kwargs).to_dict()
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('nova',
                                               client.client.management_url)
 def handle_get(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         return getattr(client, 'show_%s' % resource)(resource_id)[resource]
     except q_exceptions.ConnectionFailed:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
     except q_exceptions.NotFound:
         LOG.debug("%(resource)s %(resource_id)s not found",
                   {'resource': resource, 'resource_id': resource_id})
Beispiel #13
0
 def handle_create(self, cxt, resource, *args, **kwargs):
     try:
         client = self._get_client(cxt)
         ret = getattr(client, 'create_%s' % resource)(*args, **kwargs)
         if resource in ret:
             return ret[resource]
         else:
             return ret['%ss' % resource]
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
 def handle_delete(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         return getattr(client, collection).delete(resource_id)
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('cinder',
                                               client.client.management_url)
     except c_exceptions.NotFound:
         LOG.debug("Delete %(resource)s %(resource_id)s which not found",
                   {'resource': resource, 'resource_id': resource_id})
 def handle_get(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         res = getattr(client, collection).get(resource_id)
         info = {}
         info.update(res._info)
         return info
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('cinder',
                                               client.client.management_url)
 def handle_get(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         collection = '%ss' % resource
         return getattr(client, collection).get(resource_id).to_dict()
     except g_exceptions.InvalidEndpoint:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('glance',
                                               client.http_client.endpoint)
     except g_exceptions.HTTPNotFound:
         LOG.debug("%(resource)s %(resource_id)s not found",
                   {'resource': resource, 'resource_id': resource_id})
 def handle_get(self, cxt, resource, resource_id):
     try:
         resource = self._adapt_resource(resource)
         client = self._get_client(cxt)
         collection = '%ss' % resource
         return getattr(client, collection).get(resource_id).to_dict()
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('nova',
                                               client.client.management_url)
     except n_exceptions.NotFound:
         LOG.debug("%(resource)s %(resource_id)s not found",
                   {'resource': resource, 'resource_id': resource_id})
 def handle_action(self, cxt, resource, action, *args, **kwargs):
     try:
         resource = self._adapt_resource(resource)
         client = self._get_client(cxt)
         collection = '%ss' % resource
         resource_manager = getattr(client, collection)
         resource_manager.convert_into_with_meta = _convert_into_with_meta
         # NOTE(zhiyuan) yes, this is a dirty hack. but the original
         # implementation hides response object which is needed
         return getattr(resource_manager, action)(*args, **kwargs)
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('nova',
                                               client.client.management_url)
 def handle_list(self, cxt, resource, filters):
     try:
         resource = self._adapt_resource(resource)
         client = self._get_client(cxt)
         collection = '%ss' % resource
         # only server list supports filter
         if resource == 'server':
             search_opts = _transform_filters(filters)
             return [res.to_dict() for res in getattr(
                 client, collection).list(search_opts=search_opts)]
         else:
             return [res.to_dict() for res in getattr(client,
                                                      collection).list()]
     except r_exceptions.ConnectTimeout:
         self.endpoint_url = None
         raise exceptions.EndpointNotAvailable('nova',
                                               client.client.management_url)
Beispiel #20
0
 def handle_get(self, cxt, resource, resource_id):
     try:
         client = self._get_client(cxt)
         if resource == 'qos_policy':
             return getattr(client, 'show_%s' % resource)(
                 resource_id)['policy']
         if resource in policy_rules:
             (rule_id, policy_id) = resource_id.split('#')
             return getattr(client, 'show_%s' % resource)(
                 rule_id, policy_id)[resource]
         return getattr(client, 'show_%s' % resource)(resource_id)[resource]
     except q_exceptions.ConnectionFailed:
         raise exceptions.EndpointNotAvailable(
             'neutron', client.httpclient.endpoint_url)
     except q_exceptions.NotFound:
         LOG.debug("%(resource)s %(resource_id)s not found",
                   {'resource': resource, 'resource_id': resource_id})
Beispiel #21
0
 def handle_delete(self, cxt, resource, name):
     try:
         cli = self._get_client(cxt)
         cli.delete_fake_res(name)
     except FakeException:
         raise exceptions.EndpointNotAvailable(FAKE_TYPE, cli.endpoint)