def primary_handler()

in code/ct_flowlog_activator.py [0:0]


def primary_handler(context):
    master_session = assume_role(os.environ['master_account'], os.environ['master_role'], os.environ['org_id'])

    # Look at stackset for existing deployment and do enforcement
    stackset_name = str(os.environ['stackset_name'])
    stackset_instances = list_stack_instance_by_region(master_session, stackset_name, os.environ['stackset_region'])
    account_list = []

    for instance in stackset_instances:
        account_list.append(instance['Account'])
    account_list = list(set(account_list))

    LOGGER.info("Accounts in stackset: {}".format(account_list))
    lambda_client = session.client('lambda')
    for account_id in account_list:
        worker_event = {}
        worker_event['child-thread'] = str(uuid.uuid1())
        worker_event['master-thread'] = context.aws_request_id
        worker_event['account'] = account_id
        response = invoke_lambda(str(context.function_name), worker_event, lambda_client, 'Event')
        LOGGER.info(f'primary_handler: executing child_handler for account {account_id}')
        LOGGER.debug(response)