def METHOD_NAME(self, target_name, target_config_dir):
    parser = ConfigParser()
    folder_name = f"{target_config_dir}/{target_name}"
    if not os.path.exists(folder_name):
        raise parser.error(f"Target folder must exist '{folder_name}'.")
    target = Target(target_name, target_config_dir)
    System.targets[target.name] = target
    errors = []  # Store all errors processing the cmd_tlm files
    try:
        for cmd_tlm_file in target.cmd_tlm_files:
            self.packet_config.process_file(cmd_tlm_file, target.name)
    except Exception as error:
        errors.append(f"Error processing {cmd_tlm_file}:\n{error}")
    if len(errors) != 0:
        raise Exception("\n".join(errors))