* Fix ec2_ami block_device_mapping volume_size to be int in 2.5 (#40938)
* fix ec2_ami block_device_mapping size to be int
* fixed cr issues
renamed `type` to `attribute_type`
reused `new_item` instead of creating new variable `value`
(cherry picked from commit ab96a84154
)
* changelog
This commit is contained in:
parent
db3a3ddfa9
commit
5503285c20
2 changed files with 10 additions and 5 deletions
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
bugfixes:
|
||||
- cast the device_mapping volume size to an int in the ec2_ami module (https://github.com/ansible/ansible/pull/40938)
|
|
@ -420,8 +420,8 @@ def create_image(module, connection):
|
|||
device = rename_item_if_exists(device, 'volume_type', 'VolumeType', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'snapshot_id', 'SnapshotId', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'delete_on_termination', 'DeleteOnTermination', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'size', 'VolumeSize', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'volume_size', 'VolumeSize', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'size', 'VolumeSize', 'Ebs', attribute_type=int)
|
||||
device = rename_item_if_exists(device, 'volume_size', 'VolumeSize', 'Ebs', attribute_type=int)
|
||||
device = rename_item_if_exists(device, 'iops', 'Iops', 'Ebs')
|
||||
device = rename_item_if_exists(device, 'encrypted', 'Encrypted', 'Ebs')
|
||||
block_device_mapping.append(device)
|
||||
|
@ -626,13 +626,15 @@ def get_image_by_id(module, connection, image_id):
|
|||
module.fail_json_aws(e, msg="Error retrieving image by image_id")
|
||||
|
||||
|
||||
def rename_item_if_exists(dict_object, attribute, new_attribute, child_node=None):
|
||||
def rename_item_if_exists(dict_object, attribute, new_attribute, child_node=None, attribute_type=None):
|
||||
new_item = dict_object.get(attribute)
|
||||
if new_item is not None:
|
||||
if attribute_type is not None:
|
||||
new_item = attribute_type(new_item)
|
||||
if child_node is None:
|
||||
dict_object[new_attribute] = dict_object.get(attribute)
|
||||
dict_object[new_attribute] = new_item
|
||||
else:
|
||||
dict_object[child_node][new_attribute] = dict_object.get(attribute)
|
||||
dict_object[child_node][new_attribute] = new_item
|
||||
dict_object.pop(attribute)
|
||||
return dict_object
|
||||
|
||||
|
|
Loading…
Reference in a new issue