From 7b94fee6205a566f1e6a769fbac4741ed8cd07ff Mon Sep 17 00:00:00 2001 From: Matej Stajduhar Date: Fri, 2 May 2025 18:32:31 +0200 Subject: [PATCH] Updating-list-of-EC2-with-all-associated-EIPs --- .../templates/API_GetListOfEC2.py.j2 | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/roles/aws/aws_admin_tools/templates/API_GetListOfEC2.py.j2 b/roles/aws/aws_admin_tools/templates/API_GetListOfEC2.py.j2 index cc6253de3..c777c9e29 100644 --- a/roles/aws/aws_admin_tools/templates/API_GetListOfEC2.py.j2 +++ b/roles/aws/aws_admin_tools/templates/API_GetListOfEC2.py.j2 @@ -17,6 +17,9 @@ def lambda_handler(event, context): pub_ip = "" priv_ip = "" inst_name = "" + eip_list=[] + priv_eip=[] + pub_eip=[] if "PublicIpAddress" in instance: pub_ip = instance['PublicIpAddress'] @@ -31,6 +34,20 @@ def lambda_handler(event, context): for name in instance['Tags']: if name['Key'] == 'Name': inst_name = name['Value'] + + eip_list = ec2_cli.describe_addresses( + Filters=[ + { + 'Name': 'tag:Name', + 'Values': [inst_name] + } + ] + ) + for eip in eip_list['Addresses']: + if "PublicIp" in eip: + pub_eip.append(eip['PublicIp']) + if "PrivateIpAddress" in eip: + priv_eip.append(eip['PrivateIpAddress']) else: inst_name = "-" @@ -39,7 +56,11 @@ def lambda_handler(event, context): 'State': instance['State'], 'Public IP': pub_ip, 'Private IP': priv_ip, - 'Instance type': instance['InstanceType'] + 'Instance type': instance['InstanceType'], + 'EIP': { + 'public': pub_eip, + 'private': priv_eip + } } Ec2_info_list.append(new_dict)