← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1596413] [NEW] Horizon user management is not working without compute service

 

Public bug reported:

Keystone is very generalized user and role management system so that Keystone can be used without compute service. 
Therefore it might be better for Horizon to work without compute service.

Currently Horizon tries to get the quota for each users when
displaying/editing role assignment pages. This eventually calls
_get_quota_data method in openstack_dashboard/usage/quotas.py  to fill
up quota information.

In this method, the following part is called but the
ServiceCatalogException is occcured when no compute service is
installed.

> quotasets.append(getattr(nova, method_name)(request, tenant_id))

https://github.com/openstack/horizon/blob/master/openstack_dashboard/usage/quotas.py#L143

It's because it tries to get method from nova service which is not
installed.

The guarding condition to check the compute service existence is
necessary to make this call safe.

>    if base.is_service_enabled(request, "compute"):
>        quotasets.append(getattr(nova, method_name)(request, tenant_id))

** Affects: horizon
     Importance: Undecided
     Assignee: JunHo Yoon (juno-yoon)
         Status: New

** Changed in: horizon
     Assignee: (unassigned) => JunHo Yoon (juno-yoon)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1596413

Title:
  Horizon user management is not working without compute service

Status in OpenStack Dashboard (Horizon):
  New

Bug description:
  Keystone is very generalized user and role management system so that Keystone can be used without compute service. 
  Therefore it might be better for Horizon to work without compute service.

  Currently Horizon tries to get the quota for each users when
  displaying/editing role assignment pages. This eventually calls
  _get_quota_data method in openstack_dashboard/usage/quotas.py  to fill
  up quota information.

  In this method, the following part is called but the
  ServiceCatalogException is occcured when no compute service is
  installed.

  > quotasets.append(getattr(nova, method_name)(request, tenant_id))

  https://github.com/openstack/horizon/blob/master/openstack_dashboard/usage/quotas.py#L143

  It's because it tries to get method from nova service which is not
  installed.

  The guarding condition to check the compute service existence is
  necessary to make this call safe.

  >    if base.is_service_enabled(request, "compute"):
  >        quotasets.append(getattr(nova, method_name)(request, tenant_id))

To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/1596413/+subscriptions


Follow ups