← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1408283] [NEW] nova list-secgroup instanceName fails if instance isn't running under admin tenant

 

Public bug reported:

Description of problem:  Ran #nova list --all-tenats as admin, figured
I'd check nova list-secgroup on one of the instances. By chance the
instance I chose happened to run under another tenant not admin's,
critical for this bug, as if I'd have chosen an instance from admin
tenant bug doesn't happen.

Any way #nova list-secgroup only accepts instanceID not instanceName as
mentioned on command's help,

# nova list-secgroup tshefitest
ERROR: No server with a name or ID of 'tshefitest' exists.

Running same command with tshefitest instance's ID works fine

# nova list-secgroup 23244bce-0232-45e6-9a1d-10e493593b7d
+--------------------------------------+---------+-------------+
| Id                                   | Name    | Description |
+--------------------------------------+---------+-------------+
| 442f555c-897b-4ad3-b46e-85c5e84ff47d | default | default     |
+--------------------------------------+---------+-------------+

If however I do same test on an instance belonging to  admin tenant both
paramaters  instanceName / instanceID work fine.


Version-Release number of selected component (if applicable):
RHEL7 
python-novaclient-2.17.0-2.el7ost.noarch
HA deployment if it matters. 

Same happens on Juno as well
python-novaclient-2.20.0-1.el7ost.noarch


How reproducible:
Every time

Steps to Reproduce:
1. Create a new user and tenant, admin user shouldn't be a member of this new tenant!  
2. Create an instance under above tenant. 
3. Create another instance this time under admin tenant. 
4. under cli with admin credentials run  #nova list --all-tenants 
4. Notice name and instance id's for both instances. 
5. #nova list-secgroup instanceName of instance from step 2 -> you should get the error message. 
6. #nova list-secgroup instanceID of instance from step 2 will work as expected. 

7. Nova list-secgroup instanceName (or instanceID) from step3 both work
fine.

Actual results:
ERROR: No server with a name or ID of 'tshefitest' exists.

Expected results:
IMHO if this command works fine with instanceID it should also work with instanceName even if instance isn't running under admin tenant. 

Additional info:
Running with --debug  exposes this:

DEBUG (shell:783) No server with a name or ID of 'tshefitest' exists.
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 780, in main
    OpenStackComputeShell().main(map(strutils.safe_decode, sys.argv[1:]))
  File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 716, in main
    args.func(self.cs, args)
  File "/usr/lib/python2.7/site-packages/novaclient/v1_1/shell.py", line 2018, in do_list_secgroup
    server = _find_server(cs, args.server)
  File "/usr/lib/python2.7/site-packages/novaclient/v1_1/shell.py", line 1549, in _find_server
    return utils.find_resource(cs.servers, server)
  File "/usr/lib/python2.7/site-packages/novaclient/utils.py", line 244, in find_resource
    raise exceptions.CommandError(msg)
CommandError: No server with a name or ID of 'tshefitest' exists.
ERROR: No server with a name or ID of 'tshefitest' exists.

On Juno same issue error:
# nova list-secgroup tshefi1
ERROR (CommandError): No server with a name or ID of 'tshefi1' exists.

** Affects: nova
     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/1408283

Title:
  nova list-secgroup instanceName fails if instance isn't running under
  admin tenant

Status in OpenStack Compute (Nova):
  New

Bug description:
  Description of problem:  Ran #nova list --all-tenats as admin, figured
  I'd check nova list-secgroup on one of the instances. By chance the
  instance I chose happened to run under another tenant not admin's,
  critical for this bug, as if I'd have chosen an instance from admin
  tenant bug doesn't happen.

  Any way #nova list-secgroup only accepts instanceID not instanceName
  as mentioned on command's help,

  # nova list-secgroup tshefitest
  ERROR: No server with a name or ID of 'tshefitest' exists.

  Running same command with tshefitest instance's ID works fine

  # nova list-secgroup 23244bce-0232-45e6-9a1d-10e493593b7d
  +--------------------------------------+---------+-------------+
  | Id                                   | Name    | Description |
  +--------------------------------------+---------+-------------+
  | 442f555c-897b-4ad3-b46e-85c5e84ff47d | default | default     |
  +--------------------------------------+---------+-------------+

  If however I do same test on an instance belonging to  admin tenant
  both paramaters  instanceName / instanceID work fine.

  
  Version-Release number of selected component (if applicable):
  RHEL7 
  python-novaclient-2.17.0-2.el7ost.noarch
  HA deployment if it matters. 

  Same happens on Juno as well
  python-novaclient-2.20.0-1.el7ost.noarch

  
  How reproducible:
  Every time

  Steps to Reproduce:
  1. Create a new user and tenant, admin user shouldn't be a member of this new tenant!  
  2. Create an instance under above tenant. 
  3. Create another instance this time under admin tenant. 
  4. under cli with admin credentials run  #nova list --all-tenants 
  4. Notice name and instance id's for both instances. 
  5. #nova list-secgroup instanceName of instance from step 2 -> you should get the error message. 
  6. #nova list-secgroup instanceID of instance from step 2 will work as expected. 

  7. Nova list-secgroup instanceName (or instanceID) from step3 both
  work fine.

  Actual results:
  ERROR: No server with a name or ID of 'tshefitest' exists.

  Expected results:
  IMHO if this command works fine with instanceID it should also work with instanceName even if instance isn't running under admin tenant. 

  Additional info:
  Running with --debug  exposes this:

  DEBUG (shell:783) No server with a name or ID of 'tshefitest' exists.
  Traceback (most recent call last):
    File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 780, in main
      OpenStackComputeShell().main(map(strutils.safe_decode, sys.argv[1:]))
    File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 716, in main
      args.func(self.cs, args)
    File "/usr/lib/python2.7/site-packages/novaclient/v1_1/shell.py", line 2018, in do_list_secgroup
      server = _find_server(cs, args.server)
    File "/usr/lib/python2.7/site-packages/novaclient/v1_1/shell.py", line 1549, in _find_server
      return utils.find_resource(cs.servers, server)
    File "/usr/lib/python2.7/site-packages/novaclient/utils.py", line 244, in find_resource
      raise exceptions.CommandError(msg)
  CommandError: No server with a name or ID of 'tshefitest' exists.
  ERROR: No server with a name or ID of 'tshefitest' exists.

  On Juno same issue error:
  # nova list-secgroup tshefi1
  ERROR (CommandError): No server with a name or ID of 'tshefi1' exists.

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


Follow ups

References