in source/sfm-custom-resource.py [0:0]
def get_ami_info(ami_name):
try:
logger.info('Calling describe_images...')
response = ec2.describe_images(
Filters=[
{
"Name": "name",
"Values": [
ami_name
]
}
]
)
logger.info('Got a response back from the server')
# Sort images by name in decscending order. The names contain the AMI version, formatted as YYYY.MM.Ver.
images = sorted(response['Images'], key=lambda k: k['CreationDate'], reverse=True)
if len(images) > 0:
logger.info('Latest image found: {}, {}'.format(images[0]['Name'], images[0]['ImageId']))
return images[0]['ImageId']
else:
logger.error('Image not found.')
raise Exception('Image not found.')
except Exception as e:
logger.error('Error occurred while describing images: {}'.format(e))
raise e