Merge "Fix the way to get backup metadata"
This commit is contained in:
@@ -445,14 +445,25 @@ class ShellTest(utils.TestCase):
|
||||
expected = {'backup': {'description': 'new-description'}}
|
||||
self.assert_called('PUT', '/backups/1234', body=expected)
|
||||
|
||||
def test_backup_update_with_metadata(self):
|
||||
cmd = '--os-volume-api-version 3.43 '
|
||||
cmd += 'backup-update '
|
||||
cmd += '--metadata foo=bar '
|
||||
cmd += '1234'
|
||||
self.run_command(cmd)
|
||||
expected = {'backup': {'metadata': {'foo': 'bar'}}}
|
||||
self.assert_called('PUT', '/backups/1234', body=expected)
|
||||
|
||||
def test_backup_update_all(self):
|
||||
# rename and change description
|
||||
self.run_command('--os-volume-api-version 3.9 '
|
||||
self.run_command('--os-volume-api-version 3.43 '
|
||||
'backup-update --name new-name '
|
||||
'--description=new-description 1234')
|
||||
'--description=new-description '
|
||||
'--metadata foo=bar 1234')
|
||||
expected = {'backup': {
|
||||
'name': 'new-name',
|
||||
'description': 'new-description',
|
||||
'metadata': {'foo': 'bar'}
|
||||
}}
|
||||
self.assert_called('PUT', '/backups/1234', body=expected)
|
||||
|
||||
|
||||
@@ -969,7 +969,7 @@ def do_migrate(cs, args):
|
||||
help='Metadata key and value pairs. Default=None.',
|
||||
start_version='3.43')
|
||||
def do_backup_update(cs, args):
|
||||
"""Renames a backup."""
|
||||
"""Updates a backup."""
|
||||
kwargs = {}
|
||||
|
||||
if args.name is not None:
|
||||
@@ -980,10 +980,10 @@ def do_backup_update(cs, args):
|
||||
|
||||
if cs.api_version >= api_versions.APIVersion("3.43"):
|
||||
if args.metadata is not None:
|
||||
kwargs['metadata'] = args.metadata
|
||||
kwargs['metadata'] = shell_utils.extract_metadata(args)
|
||||
|
||||
if not kwargs:
|
||||
msg = 'Must supply either name or description.'
|
||||
msg = 'Must supply at least one: name, description or metadata.'
|
||||
raise exceptions.ClientException(code=1, message=msg)
|
||||
|
||||
shell_utils.find_backup(cs, args.backup).update(**kwargs)
|
||||
|
||||
Reference in New Issue
Block a user