From 4719072c49447692987a17ae3f829205bea90e3a Mon Sep 17 00:00:00 2001 From: Sloane Hertel Date: Sat, 8 Feb 2020 15:48:11 -0500 Subject: [PATCH] Fix describing transit gateways with backoff in ec2_transit_gateway (#67247) * Fix ec2_transit_gateway retries. AWSRetry must be used within ClientError handling to have any effect * changelog --- .../fragments/67247-fix-ec2_transit_gateway-retries.yaml | 2 ++ lib/ansible/modules/cloud/amazon/ec2_transit_gateway.py | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 changelogs/fragments/67247-fix-ec2_transit_gateway-retries.yaml diff --git a/changelogs/fragments/67247-fix-ec2_transit_gateway-retries.yaml b/changelogs/fragments/67247-fix-ec2_transit_gateway-retries.yaml new file mode 100644 index 00000000000..9e4d8e373b3 --- /dev/null +++ b/changelogs/fragments/67247-fix-ec2_transit_gateway-retries.yaml @@ -0,0 +1,2 @@ +bugfixes: + - ec2_transit_gateway - Use AWSRetry before ClientError is handled when describing transit gateways diff --git a/lib/ansible/modules/cloud/amazon/ec2_transit_gateway.py b/lib/ansible/modules/cloud/amazon/ec2_transit_gateway.py index d974bbd848e..69eadef0e87 100644 --- a/lib/ansible/modules/cloud/amazon/ec2_transit_gateway.py +++ b/lib/ansible/modules/cloud/amazon/ec2_transit_gateway.py @@ -313,7 +313,6 @@ class AnsibleEc2Tgw(object): return transit_gateway - @AWSRetry.exponential_backoff() def get_matching_tgw(self, tgw_id, description=None, skip_deleted=True): """ search for an existing tgw by either tgw_id or description :param tgw_id: The AWS id of the transit gateway @@ -326,7 +325,7 @@ class AnsibleEc2Tgw(object): filters = ansible_dict_to_boto3_filter_list({'transit-gateway-id': tgw_id}) try: - response = self._connection.describe_transit_gateways(Filters=filters) + response = AWSRetry.exponential_backoff()(self._connection.describe_transit_gateways)(Filters=filters) except (ClientError, BotoCoreError) as e: self._module.fail_json_aws(e)