From c94c2831dad517b1e0ec4f4dd3d376a581b69691 Mon Sep 17 00:00:00 2001 From: Nathaniel McAuliffe Date: Thu, 27 Jul 2017 09:12:20 -0400 Subject: [PATCH] extracting list from CustomerGateways to match create (#24897) * Limiting CustomerGateway to dictionary within list of CustomerGateways * Copying CustomerGateways[0] to CustomerGateway only if it exsits --- .../cloud/amazon/ec2_customer_gateway.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/lib/ansible/modules/cloud/amazon/ec2_customer_gateway.py b/lib/ansible/modules/cloud/amazon/ec2_customer_gateway.py index c9b8dbf0604..bb217ecfe22 100644 --- a/lib/ansible/modules/cloud/amazon/ec2_customer_gateway.py +++ b/lib/ansible/modules/cloud/amazon/ec2_customer_gateway.py @@ -226,22 +226,20 @@ def main(): name = module.params.get('name') existing = gw_mgr.describe_gateways(module.params['ip_address']) - # describe_gateways returns a key of CustomerGateways where as create_gateway returns a - # key of CustomerGateway. For consistency, change it here - existing['CustomerGateway'] = existing['CustomerGateways'] results = dict(changed=False) if module.params['state'] == 'present': - if existing['CustomerGateway']: + if existing['CustomerGateways']: + existing['CustomerGateway'] = existing['CustomerGateways'][0] results['gateway'] = existing - if existing['CustomerGateway'][0]['Tags']: - tag_array = existing['CustomerGateway'][0]['Tags'] + if existing['CustomerGateway']['Tags']: + tag_array = existing['CustomerGateway']['Tags'] for key, value in enumerate(tag_array): if value['Key'] == 'Name': current_name = value['Value'] if current_name != name: results['name'] = gw_mgr.tag_cgw_name( - results['gateway']['CustomerGateway'][0]['CustomerGatewayId'], + results['gateway']['CustomerGateway']['CustomerGatewayId'], module.params['name'], ) results['changed'] = True @@ -258,11 +256,12 @@ def main(): results['changed'] = True elif module.params['state'] == 'absent': - if existing['CustomerGateway']: + if existing['CustomerGateways']: + existing['CustomerGateway'] = existing['CustomerGateways'][0] results['gateway'] = existing if not module.check_mode: results['gateway'] = gw_mgr.ensure_cgw_absent( - existing['CustomerGateway'][0]['CustomerGatewayId'] + existing['CustomerGateway']['CustomerGatewayId'] ) results['changed'] = True