Merge "Don't try to make an admin call in a user-level dashboard."

This commit is contained in:
Jenkins 2012-04-02 19:28:02 +00:00 committed by Gerrit Code Review
commit 2883b6e8b6
2 changed files with 12 additions and 7 deletions

View File

@ -18,7 +18,6 @@ import logging
from django import template
from django.template.defaultfilters import title
from django.utils.datastructures import SortedDict
from django.utils.translation import ugettext_lazy as _
from horizon import api
@ -182,11 +181,6 @@ class UpdateRow(tables.Row):
def get_data(self, request, instance_id):
instance = api.server_get(request, instance_id)
instance.full_flavor = api.flavor_get(request, instance.flavor["id"])
tenant = api.keystone.tenant_get(request,
instance.tenant_id,
admin=True)
instance.tenant_name = getattr(tenant, "name", None)
return instance

View File

@ -20,6 +20,7 @@ import logging
from django.template.defaultfilters import title
from django.utils.translation import ugettext_lazy as _
from horizon import api
from horizon import tables
from horizon.dashboards.nova.instances_and_volumes.instances.tables import (
TerminateInstance, EditInstance, ConsoleLink, LogLink, SnapshotLink,
@ -30,6 +31,16 @@ from horizon.dashboards.nova.instances_and_volumes.instances.tables import (
LOG = logging.getLogger(__name__)
class AdminUpdateRow(UpdateRow):
def get_data(self, request, instance_id):
instance = super(AdminUpdateRow, self).get_data(request, instance_id)
tenant = api.keystone.tenant_get(request,
instance.tenant_id,
admin=True)
instance.tenant_name = getattr(tenant, "name", None)
return instance
class SyspanelInstancesTable(tables.DataTable):
TASK_STATUS_CHOICES = (
(None, True),
@ -70,7 +81,7 @@ class SyspanelInstancesTable(tables.DataTable):
verbose_name = _("Instances")
status_columns = ["status", "task"]
table_actions = (TerminateInstance,)
row_class = UpdateRow
row_class = AdminUpdateRow
row_actions = (EditInstance, ConsoleLink, LogLink, SnapshotLink,
TogglePause, ToggleSuspend, RebootInstance,
TerminateInstance)