From e69e1ca2c84b428fc31fa77157626894333fd88f Mon Sep 17 00:00:00 2001 From: Jamie Dyer Date: Wed, 2 Nov 2016 01:26:15 +0000 Subject: [PATCH] Make the RDS endpoint available if AWS returns it. Fixes #3865 (#4143) --- cloud/amazon/rds.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cloud/amazon/rds.py b/cloud/amazon/rds.py index 15ec55e8305..cad4dbb1412 100644 --- a/cloud/amazon/rds.py +++ b/cloud/amazon/rds.py @@ -539,8 +539,8 @@ class RDSDBInstance: 'iops' : self.instance.iops } - # Endpoint exists only if the instance is available - if self.status == 'available': + # Only assign an Endpoint if one is available + if hasattr(self.instance, 'endpoint'): d["endpoint"] = self.instance.endpoint[0] d["port"] = self.instance.endpoint[1] if self.instance.vpc_security_groups is not None: @@ -587,9 +587,9 @@ class RDS2DBInstance: } if self.instance["VpcSecurityGroups"] is not None: d['vpc_security_groups'] = ','.join(x['VpcSecurityGroupId'] for x in self.instance['VpcSecurityGroups']) - if self.status == 'available': - d['endpoint'] = self.instance["Endpoint"]["Address"] - d['port'] = self.instance["Endpoint"]["Port"] + if "Endpoint" in self.instance and self.instance["Endpoint"] is not None: + d['endpoint'] = self.instance["Endpoint"].get('Address', None) + d['port'] = self.instance["Endpoint"].get('Port', None) else: d['endpoint'] = None d['port'] = None