From 4ca7726e7590972e775408ee99a62cd51f9598a6 Mon Sep 17 00:00:00 2001 From: William Holroyd Date: Fri, 10 Mar 2017 13:08:54 -0500 Subject: [PATCH] Fix Elasticcache issue where ec2 script would fail on finding lack of primary endpoint address on Redis cluster (#20190) --- contrib/inventory/ec2.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/contrib/inventory/ec2.py b/contrib/inventory/ec2.py index de549d29bdf..03b98204121 100755 --- a/contrib/inventory/ec2.py +++ b/contrib/inventory/ec2.py @@ -1254,13 +1254,14 @@ class Ec2Inventory(object): if not self.all_elasticache_replication_groups and replication_group['Status'] != 'available': return + # Skip clusters we cannot address (e.g. private VPC subnet or clustered redis) + if replication_group['NodeGroups'][0]['PrimaryEndpoint'] is None or \ + replication_group['NodeGroups'][0]['PrimaryEndpoint']['Address'] is None: + return + # Select the best destination address (PrimaryEndpoint) dest = replication_group['NodeGroups'][0]['PrimaryEndpoint']['Address'] - if not dest: - # Skip clusters we cannot address (e.g. private VPC subnet) - return - # Add to index self.index[dest] = [region, replication_group['ReplicationGroupId']]