in source/lambda/kda-vpc-config/lambda_function.py [0:0]
def _add_vpc_configuration(application_name, subnet_ids, security_group_ids):
(version_id, vpc_config_id) = _get_application_details(application_name)
if vpc_config_id:
# If the application already contains a VPC configuration, it must be removed
# The version id is updated when the delete_application_vpc_configuration API is invoked
version_id = _remove_config(application_name, version_id, vpc_config_id)
"""
If the parameter is empty (i.e. was not provided), CloudFormation will send a list in the following format:
{
'SubnetIds': ['']
}
We filter out the empty items since the VPC API does not accept null or blank values.
"""
subnets = _filter_empty_items(subnet_ids)
security_groups = _filter_empty_items(security_group_ids)
if not subnets or not security_groups:
logger.info('Either SubnetIds or SecurityGroupIds is empty, not adding configuration')
return
return _add_config(application_name, version_id, subnets, security_groups)