def describe_volumes(self, context, **kwargs): if self.volumes == {}: return {'volumeSet': [] } volumes = [] for node_name, node in self.volumes.iteritems(): for volume in node.values(): if context.user.is_authorized(volume.get('user_id', None)): v = copy.deepcopy(volume) if context.user.is_admin(): v['status'] = '%s (%s, %s, %s, %s)' % (v.get('status', None), v['user_id'], node_name, v.get('instance_id', ''), v.get('mountpoint', '')) del v['user_id'] volumes.append(v) return defer.succeed({'volumeSet': volumes})
def describe_volumes(self, context, **kwargs): if self.volumes == {}: return {'volumeSet': []} volumes = [] for node_name, node in self.volumes.iteritems(): for volume in node.values(): if context.user.is_authorized(volume.get('user_id', None)): v = copy.deepcopy(volume) if context.user.is_admin(): v['status'] = '%s (%s, %s, %s, %s)' % ( v.get('status', None), v['user_id'], node_name, v.get('instance_id', ''), v.get('mountpoint', '')) del v['user_id'] volumes.append(v) return defer.succeed({'volumeSet': volumes})
def format_instances(self, user, reservation_id=None): if self.instances == {}: return {'reservationSet': []} reservations = {} for node_name, node in self.instances.iteritems(): for instance in node.values(): res_id = instance.get('reservation_id', 'Unknown') if (user.is_authorized(instance.get('owner_id', None)) and (reservation_id == None or reservation_id == res_id)): i = {} i['instance_id'] = instance.get('instance_id', None) i['image_id'] = instance.get('image_id', None) i['instance_state'] = { 'code': instance.get('state', None), 'name': _STATE_NAMES[instance.get('state', None)] } i['public_dns_name'] = self.network.get_public_ip_for_instance( i['instance_id']) i['private_dns_name'] = instance.get( 'private_dns_name', None) if not i['public_dns_name']: i['public_dns_name'] = i['private_dns_name'] i['dns_name'] = instance.get('dns_name', None) i['key_name'] = instance.get('key_name', None) if user.is_admin(): i['key_name'] = '%s (%s, %s)' % ( i['key_name'], instance.get('owner_id', None), node_name) i['product_codes_set'] = self._convert_to_set( instance.get('product_codes', None), 'product_code') i['instance_type'] = instance.get('instance_type', None) i['launch_time'] = instance.get('launch_time', None) i['ami_launch_index'] = instance.get( 'ami_launch_index', None) if not reservations.has_key(res_id): r = {} r['reservation_id'] = res_id r['owner_id'] = instance.get('owner_id', None) r['group_set'] = self._convert_to_set( instance.get('groups', None), 'group_id') r['instances_set'] = [] reservations[res_id] = r reservations[res_id]['instances_set'].append(i) instance_response = {'reservationSet': list(reservations.values())} return instance_response
def format_instances(self, user, reservation_id = None): if self.instances == {}: return {'reservationSet': []} reservations = {} for node_name, node in self.instances.iteritems(): for instance in node.values(): res_id = instance.get('reservation_id', 'Unknown') if (user.is_authorized(instance.get('owner_id', None)) and (reservation_id == None or reservation_id == res_id)): i = {} i['instance_id'] = instance.get('instance_id', None) i['image_id'] = instance.get('image_id', None) i['instance_state'] = { 'code': instance.get('state', None), 'name': _STATE_NAMES[instance.get('state', None)] } i['public_dns_name'] = self.network.get_public_ip_for_instance(i['instance_id']) i['private_dns_name'] = instance.get('private_dns_name', None) if not i['public_dns_name']: i['public_dns_name'] = i['private_dns_name'] i['dns_name'] = instance.get('dns_name', None) i['key_name'] = instance.get('key_name', None) if user.is_admin(): i['key_name'] = '%s (%s, %s)' % (i['key_name'], instance.get('owner_id', None), node_name) i['product_codes_set'] = self._convert_to_set( instance.get('product_codes', None), 'product_code') i['instance_type'] = instance.get('instance_type', None) i['launch_time'] = instance.get('launch_time', None) i['ami_launch_index'] = instance.get('ami_launch_index', None) if not reservations.has_key(res_id): r = {} r['reservation_id'] = res_id r['owner_id'] = instance.get('owner_id', None) r['group_set'] = self._convert_to_set( instance.get('groups', None), 'group_id') r['instances_set'] = [] reservations[res_id] = r reservations[res_id]['instances_set'].append(i) instance_response = {'reservationSet' : list(reservations.values()) } return instance_response