Merge "Refactor parsing metadata to a common function"
This commit is contained in:
commit
903538ee59
novaclient
@ -956,6 +956,12 @@ class ShellTest(utils.TestCase):
|
||||
self.run_command('list --limit 3')
|
||||
self.assert_called('GET', '/servers/detail?limit=3')
|
||||
|
||||
def test_meta_parsing(self):
|
||||
meta = ['key1=meta1', 'key2=meta2']
|
||||
ref = {'key1': 'meta1', 'key2': 'meta2'}
|
||||
parsed_meta = novaclient.v2.shell._meta_parsing(meta)
|
||||
self.assertEqual(ref, parsed_meta)
|
||||
|
||||
def test_reboot(self):
|
||||
self.run_command('reboot sample-server')
|
||||
self.assert_called('POST', '/servers/1234/action',
|
||||
|
@ -79,6 +79,10 @@ def _key_value_pairing(text):
|
||||
raise argparse.ArgumentTypeError(msg)
|
||||
|
||||
|
||||
def _meta_parsing(metadata):
|
||||
return dict(v.split('=', 1) for v in metadata)
|
||||
|
||||
|
||||
def _match_image(cs, wanted_properties):
|
||||
image_list = cs.images.list()
|
||||
images_matched = []
|
||||
@ -194,7 +198,7 @@ def _boot(cs, args):
|
||||
|
||||
flavor = _find_flavor(cs, args.flavor)
|
||||
|
||||
meta = dict(v.split('=', 1) for v in args.meta)
|
||||
meta = _meta_parsing(args.meta)
|
||||
|
||||
files = {}
|
||||
for f in args.files:
|
||||
@ -1547,7 +1551,7 @@ def do_rebuild(cs, args):
|
||||
kwargs = utils.get_resource_manager_extra_kwargs(do_rebuild, args)
|
||||
kwargs['preserve_ephemeral'] = args.preserve_ephemeral
|
||||
kwargs['name'] = args.name
|
||||
meta = dict(v.split('=', 1) for v in args.meta)
|
||||
meta = _meta_parsing(args.meta)
|
||||
kwargs['meta'] = meta
|
||||
|
||||
files = {}
|
||||
@ -1806,7 +1810,7 @@ def do_set_password(cs, args):
|
||||
def do_image_create(cs, args):
|
||||
"""Create a new image by taking a snapshot of a running server."""
|
||||
server = _find_server(cs, args.server)
|
||||
meta = dict(v.split('=', 1) for v in args.metadata) or None
|
||||
meta = _meta_parsing(args.metadata) or None
|
||||
image_uuid = cs.servers.create_image(server, args.name, meta)
|
||||
|
||||
if args.poll:
|
||||
|
Loading…
x
Reference in New Issue
Block a user