in Back-End/lambdas/receive_sqs_message.py [0:0]
def get_all_ris(account_number, region, cross_account_role):
# Init
var_list = []
# Use boto3 on source account
client_ec2 = create_boto_client(
account_number, region, 'ec2', cross_account_role)
# No paginator for reservations
# paginator = client_ec2.get_paginator('')
result = client_ec2.describe_reserved_instances()
for i in result['ReservedInstances']:
# only get active ones
if i['State'] == 'active':
var_list.append(
{
'EntryType': 'ri',
'AccountNumber': str(account_number),
'InstanceCount': int(i['InstanceCount']),
'InstanceType': str(i['InstanceType']),
'Scope': str(i['Scope']),
'ProductDescription': str(i['ProductDescription']),
'Id': str(i['ReservedInstancesId']),
'Start': str(i['Start']),
'End': str(i['End']),
'InstanceTenancy': str(i['InstanceTenancy']),
'OfferingClass': str(i['OfferingClass'])
})
return var_list