From 164043bd6db6c40fcece8614f8fce3fb66cdeed7 Mon Sep 17 00:00:00 2001 From: vanga Date: Thu, 9 Jul 2015 20:42:54 +0530 Subject: [PATCH] Throw error if encryption is set while passing a snapshot id --- cloud/amazon/ec2.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cloud/amazon/ec2.py b/cloud/amazon/ec2.py index 840cf4fed1f..a6b378c7e9c 100644 --- a/cloud/amazon/ec2.py +++ b/cloud/amazon/ec2.py @@ -692,6 +692,8 @@ def create_block_device(module, ec2, volume): size = volume.get('volume_size', snapshot.volume_size) if int(volume['iops']) > MAX_IOPS_TO_SIZE_RATIO * size: module.fail_json(msg = 'IOPS must be at most %d times greater than size' % MAX_IOPS_TO_SIZE_RATIO) + if 'encrypted' in volume: + module.fail_json(msg = 'You can not set encyrption when creating a volume from a snapshot') if 'ephemeral' in volume: if 'snapshot' in volume: module.fail_json(msg = 'Cannot set both ephemeral and snapshot') @@ -702,7 +704,6 @@ def create_block_device(module, ec2, volume): delete_on_termination=volume.get('delete_on_termination', False), iops=volume.get('iops'), encrypted=volume.get('encrypted', None)) - def boto_supports_param_in_spot_request(ec2, param): """ Check if Boto library has a in its request_spot_instances() method. For example, the placement_group parameter wasn't added until 2.3.0.