According to the comment in the source code, the snapshot-update of
v2 would be able to allow either "name" or "display_name" parameter.
And if both paramters are specified, "name" parameter is effective
over "display_name" like "description" parameter.
However "display_name" parameter is ignored now, because cinder writes
over empty dict(update_dict['display_name']).
This patch fixes the problem.
Fixes bug #
1226398
Change-Id: Icd48556a26b9346f73b7c1b82ffbcdd469c4d28d
valid_update_keys = (
'name',
'description',
+ 'display_name',
'display_description',
)
+ # NOTE(thingee): v2 API allows name instead of display_name
+ if 'name' in snapshot:
+ snapshot['display_name'] = snapshot['name']
+ del snapshot['name']
+
# NOTE(thingee): v2 API allows description instead of
# display_description
if 'description' in snapshot:
if key in snapshot:
update_dict[key] = snapshot[key]
- # NOTE(thingee): v2 API allows name instead of display_name
- if 'name' in update_dict:
- update_dict['display_name'] = update_dict['name']
- del update_dict['name']
-
try:
snapshot = self.volume_api.get_snapshot(context, id)
self.volume_api.update_snapshot(context, snapshot, update_dict)