Example #1
0
 def get_data(self):
     try:
         volume_id = self.kwargs['volume_id']
         volume = cinder.volume_get(self.request, volume_id)
         search_opts = self.get_search_opts(volume)
         snapshots = cinder.volume_snapshot_list(
             self.request, search_opts=search_opts)
         if snapshots:
             setattr(volume, 'has_snapshot', True)
         for att in volume.attachments:
             att['instance'] = nova.server_get(self.request,
                                               att['server_id'])
         if getattr(volume, 'group_id', None):
             volume.group = cinder.group_get(self.request, volume.group_id)
         else:
             volume.group = None
     except Exception:
         redirect = self.get_redirect_url()
         exceptions.handle(self.request,
                           _('Unable to retrieve volume details.'),
                           redirect=redirect)
     try:
         volume.messages = cinder.message_list(
             self.request,
             {'resource_type': 'volume', 'resource_uuid': volume.id},
         )
     except Exception:
         volume.messages = []
         exceptions.handle(
             self.request,
             _('Unable to retrieve volume messages.'),
             ignore=True,
         )
     return volume, snapshots
Example #2
0
 def prepare_group_source_field(self, request):
     try:
         group_id = self.initial['group_id']
         group = cinder.group_get(request, group_id)
         self.fields['group_source'].choices = ((group_id, group), )
     except Exception:
         exceptions.handle(request,
                           _('Unable to load the specified group.'))
Example #3
0
 def prepare_group_source_field(self, request):
     try:
         group_id = self.initial['group_id']
         group = cinder.group_get(request, group_id)
         self.fields['group_source'].choices = ((group_id, group),)
     except Exception:
         exceptions.handle(request,
                           _('Unable to load the specified group.'))
Example #4
0
 def get_object(self):
     group_id = self.kwargs['group_id']
     try:
         self._object = cinder.group_get(self.request, group_id)
     except Exception:
         exceptions.handle(self.request,
                           _('Unable to retrieve group details.'),
                           redirect=reverse(INDEX_URL))
     return self._object
Example #5
0
 def get_data(self, request, vg_snapshot_id):
     vg_snapshot = cinder.group_snapshot_get(request, vg_snapshot_id)
     if getattr(vg_snapshot, 'group_id', None):
         try:
             vg_snapshot.group = cinder.group_get(request,
                                                  vg_snapshot.group_id)
         except Exception:
             exceptions.handle(request, _("Unable to retrieve group"))
             vg_snapshot.group = None
     return vg_snapshot
Example #6
0
 def get_data(self, request, vg_snapshot_id):
     vg_snapshot = cinder.group_snapshot_get(request, vg_snapshot_id)
     if getattr(vg_snapshot, 'group_id', None):
         try:
             vg_snapshot.group = cinder.group_get(request,
                                                  vg_snapshot.group_id)
         except Exception:
             exceptions.handle(request, _("Unable to retrieve group"))
             vg_snapshot.group = None
     return vg_snapshot
Example #7
0
 def get_data(self, request, volume_id):
     volume = cinder.volume_get(request, volume_id)
     if volume and getattr(volume, 'group_id', None):
         try:
             volume.group = cinder.group_get(request, volume.group_id)
         except Exception:
             exceptions.handle(request, _("Unable to retrieve group."))
             volume.group = None
     else:
         volume.group = None
     return volume
Example #8
0
 def get_data(self, request, volume_id):
     volume = cinder.volume_get(request, volume_id)
     if volume and getattr(volume, 'group_id', None):
         try:
             volume.group = cinder.group_get(request, volume.group_id)
         except Exception:
             exceptions.handle(request, _("Unable to retrieve group."))
             volume.group = None
     else:
         volume.group = None
     return volume