def _handle_create()

in apigw-vpce-helpers/apigw_vpce_helpers/custom_resource/handler.py [0:0]


def _handle_create(event, context):
    response_data = {}

    try:
        enis = event['ResourceProperties']['vpce_enis']

        ec2 = boto3.resource('ec2')

        ips = []

        for i, eni in enumerate(enis):
            network_interface = ec2.NetworkInterface(eni)
            response_data[f"IP{str(i)}"] = network_interface.private_ip_address
            ips.append(network_interface.private_ip_address)

        response_data["IPS"] = ips

        return (cfnresponse.SUCCESS, response_data)
    except Exception as e:
        log.error('Error fetching Network Interfaces')
        log.error(e)
        response_data = {'error': str(e)}

        return (cfnresponse.FAILED, response_data)