Fix the incorrect return messages in keypair show and delete
When we delete or show a keypair, if the keypair doesn't exist, we'll get "The resource could not be found.(HTTP 404)", this patch will change it to "ERROR: No keypair with a name or ID of 'keypair_name' exists." Change-Id: Ifebd8d2213c327f3d3fdd672207170aebbe1bb40 Closes-Bug: #1307338
This commit is contained in:
@@ -1013,12 +1013,24 @@ class FakeHTTPClient(base_client.HTTPClient):
|
|||||||
# Keypairs
|
# Keypairs
|
||||||
#
|
#
|
||||||
def get_os_keypairs_test(self, *kw):
|
def get_os_keypairs_test(self, *kw):
|
||||||
return (200, {}, {'keypair': self.get_os_keypairs()[2]['keypairs'][0]})
|
return (200, {}, {'keypair':
|
||||||
|
self.get_os_keypairs()[2]['keypairs'][0]['keypair']})
|
||||||
|
|
||||||
def get_os_keypairs(self, *kw):
|
def get_os_keypairs(self, *kw):
|
||||||
return (200, {}, {"keypairs": [
|
return (200, {}, {"keypairs": [
|
||||||
{'fingerprint': 'FAKE_KEYPAIR', 'name': 'test'}
|
{"keypair": {
|
||||||
]})
|
"public_key": "FAKE_SSH_RSA",
|
||||||
|
"private_key": "FAKE_PRIVATE_KEY",
|
||||||
|
"user_id":
|
||||||
|
"81e373b596d6466e99c4896826abaa46",
|
||||||
|
"name": "test",
|
||||||
|
"deleted": False,
|
||||||
|
"created_at": "2014-04-19T02:16:44.000000",
|
||||||
|
"updated_at": "2014-04-19T10:12:3.000000",
|
||||||
|
"figerprint": "FAKE_KEYPAIR",
|
||||||
|
"deleted_at": None,
|
||||||
|
"id": 4}
|
||||||
|
}]})
|
||||||
|
|
||||||
def delete_os_keypairs_test(self, **kw):
|
def delete_os_keypairs_test(self, **kw):
|
||||||
return (202, {}, None)
|
return (202, {}, None)
|
||||||
@@ -1027,7 +1039,7 @@ class FakeHTTPClient(base_client.HTTPClient):
|
|||||||
assert list(body) == ['keypair']
|
assert list(body) == ['keypair']
|
||||||
fakes.assert_has_keys(body['keypair'],
|
fakes.assert_has_keys(body['keypair'],
|
||||||
required=['name'])
|
required=['name'])
|
||||||
r = {'keypair': self.get_os_keypairs()[2]['keypairs'][0]}
|
r = {'keypair': self.get_os_keypairs()[2]['keypairs'][0]['keypair']}
|
||||||
return (202, {}, r)
|
return (202, {}, r)
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -203,7 +203,7 @@ def print_dict(d, dict_property="Property", dict_value="Value", wrap=0):
|
|||||||
|
|
||||||
def find_resource(manager, name_or_id, **find_args):
|
def find_resource(manager, name_or_id, **find_args):
|
||||||
"""Helper for the _find_* methods."""
|
"""Helper for the _find_* methods."""
|
||||||
# for str id which is not uuid (for Flavor search currently)
|
# for str id which is not uuid (for Flavor and Keypair search currently)
|
||||||
if getattr(manager, 'is_alphanum_id_allowed', False):
|
if getattr(manager, 'is_alphanum_id_allowed', False):
|
||||||
try:
|
try:
|
||||||
return manager.get(name_or_id)
|
return manager.get(name_or_id)
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ class Keypair(base.Resource):
|
|||||||
class KeypairManager(base.ManagerWithFind):
|
class KeypairManager(base.ManagerWithFind):
|
||||||
resource_class = Keypair
|
resource_class = Keypair
|
||||||
keypair_prefix = "os-keypairs"
|
keypair_prefix = "os-keypairs"
|
||||||
|
is_alphanum_id_allowed = True
|
||||||
|
|
||||||
def get(self, keypair):
|
def get(self, keypair):
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -2432,7 +2432,7 @@ def do_keypair_add(cs, args):
|
|||||||
@utils.arg('name', metavar='<name>', help=_('Keypair name to delete.'))
|
@utils.arg('name', metavar='<name>', help=_('Keypair name to delete.'))
|
||||||
def do_keypair_delete(cs, args):
|
def do_keypair_delete(cs, args):
|
||||||
"""Delete keypair given by its name."""
|
"""Delete keypair given by its name."""
|
||||||
name = args.name
|
name = _find_keypair(cs, args.name)
|
||||||
cs.keypairs.delete(name)
|
cs.keypairs.delete(name)
|
||||||
|
|
||||||
|
|
||||||
@@ -2455,10 +2455,15 @@ def _print_keypair(keypair):
|
|||||||
help=_("Name or ID of keypair"))
|
help=_("Name or ID of keypair"))
|
||||||
def do_keypair_show(cs, args):
|
def do_keypair_show(cs, args):
|
||||||
"""Show details about the given keypair."""
|
"""Show details about the given keypair."""
|
||||||
keypair = cs.keypairs.get(args.keypair)
|
keypair = _find_keypair(cs, args.keypair)
|
||||||
_print_keypair(keypair)
|
_print_keypair(keypair)
|
||||||
|
|
||||||
|
|
||||||
|
def _find_keypair(cs, keypair):
|
||||||
|
"""Get a keypair by name or ID."""
|
||||||
|
return utils.find_resource(cs.keypairs, keypair)
|
||||||
|
|
||||||
|
|
||||||
@utils.arg('--tenant',
|
@utils.arg('--tenant',
|
||||||
#nova db searches by project_id
|
#nova db searches by project_id
|
||||||
dest='tenant',
|
dest='tenant',
|
||||||
|
|||||||
@@ -1973,7 +1973,7 @@ def do_keypair_add(cs, args):
|
|||||||
@utils.arg('name', metavar='<name>', help='Keypair name to delete.')
|
@utils.arg('name', metavar='<name>', help='Keypair name to delete.')
|
||||||
def do_keypair_delete(cs, args):
|
def do_keypair_delete(cs, args):
|
||||||
"""Delete keypair given by its name."""
|
"""Delete keypair given by its name."""
|
||||||
name = args.name
|
name = _find_keypair(cs, args.name)
|
||||||
cs.keypairs.delete(name)
|
cs.keypairs.delete(name)
|
||||||
|
|
||||||
|
|
||||||
@@ -1996,10 +1996,15 @@ def _print_keypair(keypair):
|
|||||||
help="Name or ID of keypair")
|
help="Name or ID of keypair")
|
||||||
def do_keypair_show(cs, args):
|
def do_keypair_show(cs, args):
|
||||||
"""Show details about the given keypair."""
|
"""Show details about the given keypair."""
|
||||||
keypair = cs.keypairs.get(args.keypair)
|
keypair = _find_keypair(cs, args.keypair)
|
||||||
_print_keypair(keypair)
|
_print_keypair(keypair)
|
||||||
|
|
||||||
|
|
||||||
|
def _find_keypair(cs, keypair):
|
||||||
|
"""Get a keypair by name or ID."""
|
||||||
|
return utils.find_resource(cs.keypairs, keypair)
|
||||||
|
|
||||||
|
|
||||||
@utils.arg('--start', metavar='<start>',
|
@utils.arg('--start', metavar='<start>',
|
||||||
help='Usage range start date ex 2012-01-20 (default: 4 weeks ago)',
|
help='Usage range start date ex 2012-01-20 (default: 4 weeks ago)',
|
||||||
default=None)
|
default=None)
|
||||||
|
|||||||
Reference in New Issue
Block a user