diff --git a/cinderclient/v1/shell.py b/cinderclient/v1/shell.py index 74f8662..ff7842b 100644 --- a/cinderclient/v1/shell.py +++ b/cinderclient/v1/shell.py @@ -352,7 +352,9 @@ def do_metadata(cs, args): if args.action == 'set': cs.volumes.set_metadata(volume, metadata) elif args.action == 'unset': - cs.volumes.delete_metadata(volume, list(metadata)) + # NOTE(zul): Make sure py2/py3 sorting is the same + cs.volumes.delete_metadata(volume, sorted(metadata.keys(), + reverse=True)) @utils.arg( diff --git a/cinderclient/v2/shell.py b/cinderclient/v2/shell.py index 6ce4e87..014dbf7 100644 --- a/cinderclient/v2/shell.py +++ b/cinderclient/v2/shell.py @@ -390,7 +390,9 @@ def do_metadata(cs, args): if args.action == 'set': cs.volumes.set_metadata(volume, metadata) elif args.action == 'unset': - cs.volumes.delete_metadata(volume, list(metadata)) + # NOTE(zul): Make sure py2/py3 sorting is the same + cs.volumes.delete_metadata(volume, sorted(metadata.keys(), + reverse=True)) @utils.arg('--all-tenants',