Member list to show ERRORED instances
Change-Id: I1b1a659c2a6ce85e375d7892a54d998b3697265f closes-bug: #1482325
This commit is contained in:
parent
a82b7524c4
commit
c934db1617
|
@ -144,13 +144,12 @@ class RemoveVMLink(tables.DeleteAction):
|
|||
self.table.kwargs['policy_target_id']})
|
||||
try:
|
||||
pts = []
|
||||
for port in api.neutron.port_list(request, device_id=instance_id):
|
||||
policytarget = client.pt_list(request,
|
||||
tenant_id=request.user.tenant_id, port_id=port.id)
|
||||
if policytarget:
|
||||
pts.append(policytarget[0])
|
||||
for pt in pts:
|
||||
client.pt_delete(request, pt.id)
|
||||
instance = api.nova.server_get(request, instance_id)
|
||||
metadata_pts = instance.metadata.get('pts', None)
|
||||
if metadata_pts:
|
||||
pts = metadata_pts.split(",")
|
||||
for pt in pts:
|
||||
client.pt_delete(request, pt)
|
||||
api.nova.server_delete(request, instance_id)
|
||||
LOG.debug('Deleted instance %s successfully' % instance_id)
|
||||
return http.HttpResponseRedirect(url)
|
||||
|
|
|
@ -128,6 +128,7 @@ class InstancesTab(tabs.TableTab):
|
|||
tenant_id=self.request.user.tenant_id,
|
||||
policy_target_group_id=policy_targetid)
|
||||
policy_target_ports = [x.port_id for x in policytargets]
|
||||
policy_target_ids = [p.id for p in policytargets]
|
||||
marker = self.request.GET.get(
|
||||
tables.InstancesTable._meta.pagination_param, None)
|
||||
# TODO(Sumit): Setting paginate to False is a temporary
|
||||
|
@ -150,11 +151,13 @@ class InstancesTab(tabs.TableTab):
|
|||
if policy_target_ports:
|
||||
time.sleep(0.5)
|
||||
for item in instances:
|
||||
for port in api.neutron.port_list(self.request,
|
||||
device_id=item.id):
|
||||
if port.id in policy_target_ports:
|
||||
filtered_instances.append(item)
|
||||
break
|
||||
metadata_pts = item.metadata.get('pts', None)
|
||||
if metadata_pts:
|
||||
pts = metadata_pts.split(",")
|
||||
for pt in pts:
|
||||
if pt in policy_target_ids:
|
||||
filtered_instances.append(item)
|
||||
break
|
||||
except Exception:
|
||||
self._has_more = False
|
||||
error_message = _('Unable to get instances')
|
||||
|
|
|
@ -582,6 +582,7 @@ class LaunchInstance(workflows.Workflow):
|
|||
else:
|
||||
instance_name = context['name'] + str(count)
|
||||
nics = []
|
||||
pts = []
|
||||
for ptg_id in context['group_id']:
|
||||
values = ptg_id.split(":")
|
||||
ptg_id = values[0]
|
||||
|
@ -604,6 +605,8 @@ class LaunchInstance(workflows.Workflow):
|
|||
break
|
||||
ep = client.pt_create(request, **args)
|
||||
nics.append({'port-id': ep.port_id})
|
||||
pts.append(ep.id)
|
||||
meta_data = {'pts': ','.join(pts)}
|
||||
api.nova.server_create(request,
|
||||
instance_name,
|
||||
image_id,
|
||||
|
@ -618,7 +621,8 @@ class LaunchInstance(workflows.Workflow):
|
|||
instance_count=1,
|
||||
admin_pass=context['admin_pass'],
|
||||
disk_config=context.get('disk_config'),
|
||||
config_drive=context.get('config_drive'))
|
||||
config_drive=context.get('config_drive'),
|
||||
meta=meta_data)
|
||||
count += 1
|
||||
return True
|
||||
except Exception as e:
|
||||
|
|
Loading…
Reference in New Issue