in resources/AccountCreationLambda.py [0:0]
def delete_default_vpc(credentials,currentregion):
#print("Default VPC deletion in progress in {}".format(currentregion))
ec2_client = boto3.client('ec2',
aws_access_key_id=credentials['AccessKeyId'],
aws_secret_access_key=credentials['SecretAccessKey'],
aws_session_token=credentials['SessionToken'],
region_name=currentregion)
vpc_response = ec2_client.describe_vpcs()
for i in range(0,len(vpc_response['Vpcs'])):
if((vpc_response['Vpcs'][i]['InstanceTenancy']) == 'default'):
default_vpcid = vpc_response['Vpcs'][0]['VpcId']
subnet_response = ec2_client.describe_subnets()
subnet_delete_response = []
default_subnets = []
for i in range(0,len(subnet_response['Subnets'])):
if(subnet_response['Subnets'][i]['VpcId'] == default_vpcid):
default_subnets.append(subnet_response['Subnets'][i]['SubnetId'])
for i in range(0,len(default_subnets)):
subnet_delete_response.append(ec2_client.delete_subnet(SubnetId=default_subnets[i],DryRun=False))
#print("Default Subnets" + currentregion + "Deleted.")
igw_response = ec2_client.describe_internet_gateways()
for i in range(0,len(igw_response['InternetGateways'])):
for j in range(0,len(igw_response['InternetGateways'][i]['Attachments'])):
if(igw_response['InternetGateways'][i]['Attachments'][j]['VpcId'] == default_vpcid):
default_igw = igw_response['InternetGateways'][i]['InternetGatewayId']
#print(default_igw)
detach_default_igw_response = ec2_client.detach_internet_gateway(InternetGatewayId=default_igw,VpcId=default_vpcid,DryRun=False)
delete_internet_gateway_response = ec2_client.delete_internet_gateway(InternetGatewayId=default_igw)
#print("Default IGW " + currentregion + "Deleted.")
time.sleep(10)
delete_vpc_response = ec2_client.delete_vpc(VpcId=default_vpcid,DryRun=False)
print("Deleted Default VPC in {}".format(currentregion))
return delete_vpc_response