def del_igw()

in source/Lambda/innovation_delete_default_vpcs.py [0:0]


def del_igw(ec2, vpc_id):
    try:
        response = ec2.describe_internet_gateways(
            Filters=[
                {
                    'Name': 'attachment.vpc-id',
                    'Values': [
                        vpc_id
                    ],
                },
            ]
        )
        igws = response['InternetGateways']
    except Exception as e:
        message = {'MESSAGE': 'Exception occured while fetching Internet Gateways in default VPC', 'FILE': __file__.split('/')[-1], 
                           'METHOD': inspect.stack()[0][3], 'EXCEPTION': str(e), 'TRACE': traceback.format_exc()}
        logger.exception(message)
        raise

    try:
        for igw in igws:
            igw_id = igw['InternetGatewayId']
            ec2.detach_internet_gateway(
                InternetGatewayId = igw_id,
                VpcId = vpc_id
            )
    except Exception as e:
        message = {'MESSAGE': 'Exception occured while detaching Internet Gateway in default VPC', 'FILE': __file__.split('/')[-1], 
                           'METHOD': inspect.stack()[0][3], 'EXCEPTION': str(e), 'TRACE': traceback.format_exc()}
        logger.exception(message)
        raise