** Also affects: nova/havana
   Importance: Undecided
       Status: New

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

Title:
  non-admin user cannot unshelve a server

Status in OpenStack Compute (Nova):
  Fix Released
Status in OpenStack Compute (nova) havana series:
  New

Bug description:
  If non-admin user try to unshelve a server, nova-compute fails due to
  "User does not have admin privileges".

  The nova-compute log likes the following: 
(http://logs.openstack.org/92/49892/9/check/check-tempest-devstack-vm-full/aff2152/logs/screen-n-cpu.txt.gz)
  2013-10-21 06:14:24.894 ERROR nova.openstack.common.rpc.amqp 
[req-32fb62d3-f520-4fef-b116-9855066b28d4 
ServerActionsTestJSON-tempest-54235254-user 
ServerActionsTestJSON-tempest-54235254-tenant] Exception during message handling
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp Traceback 
(most recent call last):
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 461, in 
_process_data
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     **args)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/dispatcher.py", line 172, in 
dispatch
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     result 
= getattr(proxyobj, method)(ctxt, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/exception.py", line 90, in wrapped
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
payload)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/exception.py", line 73, in wrapped
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
f(self, context, *args, **kw)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 244, in decorated_function
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     pass
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 230, in decorated_function
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
function(self, context, *args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 295, in decorated_function
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
function(self, context, *args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 272, in decorated_function
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     e, 
sys.exc_info())
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 259, in decorated_function
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
function(self, context, *args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 3426, in unshelve_instance
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
do_unshelve_instance()
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/lockutils.py", line 246, in inner
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
f(*args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 3425, in 
do_unshelve_instance
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
self._unshelve_instance(context, instance, image)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 3443, in _unshelve_instance
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
compute_info = self._get_compute_info(context, self.host)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/compute/manager.py", line 3908, in _get_compute_info
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
context, host)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/conductor/api.py", line 221, in 
service_get_by_compute_host
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     result 
= self._manager.service_get_all_by(context, 'compute', host)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/conductor/rpcapi.py", line 332, in service_get_all_by
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
topic=topic, host=host, binary=binary)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/rpcclient.py", line 85, in call
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
self._invoke(self.proxy.call, ctxt, method, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/rpcclient.py", line 63, in _invoke
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
cast_or_call(ctxt, msg, **self.kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/proxy.py", line 126, in call
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     result 
= rpc.call(context, real_topic, msg, timeout)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/__init__.py", line 139, in call
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
_get_impl().call(CONF, context, topic, msg, timeout)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/impl_kombu.py", line 816, in call
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
rpc_amqp.get_connection_pool(conf, Connection))
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 574, in call
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     rv = 
list(rv)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 539, in __iter__
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     raise 
result
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
AdminRequired_Remote: User does not have admin privileges
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp Traceback 
(most recent call last):
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/amqp.py", line 461, in 
_process_data
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     **args)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/dispatcher.py", line 172, in 
dispatch
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     result 
= getattr(proxyobj, method)(ctxt, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 439, in inner
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
catch_client_exception(exceptions, func, *args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/openstack/common/rpc/common.py", line 420, in 
catch_client_exception
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
func(*args, **kwargs)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/conductor/manager.py", line 419, in service_get_all_by
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     result 
= self.db.service_get_by_compute_host(context, host)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/db/api.py", line 140, in service_get_by_compute_host
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     return 
IMPL.service_get_by_compute_host(context, host)
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/db/sqlalchemy/api.py", line 106, in wrapper
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     
nova.context.require_admin_context(args[0])
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp   File 
"/opt/stack/new/nova/nova/context.py", line 195, in require_admin_context
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp     raise 
exception.AdminRequired()
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
AdminRequired: User does not have admin privileges
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp 
  2013-10-21 06:14:24.894 26229 TRACE nova.openstack.common.rpc.amqp

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to