in traffic_mirroring/app_helper.py [0:0]
def get_or_create_target(ec2, instance, config):
if using_predefined_target(config):
targetId = config['targetId']
log.info('Using provided target: %s', targetId)
return targetId
log.info('No target provided in config, determining if one needs to be created')
target_subnet_id = get_target_subnet_id(instance, config)
target_tag_filter = create_response_filter(
"tag:" + SUBNET_TAG_KEY, target_subnet_id)
response = describe_targets(ec2, target_tag_filter)
if response["TrafficMirrorTargets"]:
return response["TrafficMirrorTargets"][0]["TrafficMirrorTargetId"]
else:
log.info('No available target found. Creating one')
return create_target(ec2, target_subnet_id, config)