nvflare.tool.kit.kit_config module

Shared startup kit registry helpers for the NVFlare CLI.

exception StartupKitConfigError(message: str, hint: str | None = None)[source]

Bases: ValueError

Configuration or validation error for startup kit resolution.

add_startup_kit_entry(config: ConfigTree, kit_id: str, path: str, force: bool = False) ConfigTree[source]

Register ID -> path for an admin/user startup kit. Never changes active.

classify_startup_kit(path: str) Tuple[str, str][source]

Return (kind, normalized participant dir) for a generated startup kit.

clear_active_if(config: ConfigTree, removed_ids: Set[str]) ConfigTree[source]

Clear startup_kits.active when it points to a removed ID.

get_active_startup_kit_id(config: ConfigTree) str | None[source]
get_cli_config_path() Path[source]
get_startup_kit_entries(config: ConfigTree) Dict[str, str][source]

Return the startup kit registry as an ID-to-path mapping.

get_startup_kit_status(path: str) Tuple[str, str | None, Dict][source]

Return (status, normalized_path, metadata) without raising for stale entries.

inspect_startup_kit_metadata(path: str) Dict[source]

Best-effort metadata inspection for display.

load_cli_config() ConfigTree[source]

Load ~/.nvflare/config.conf or return an empty version-2 config.

remove_entries_under_workspace(config: ConfigTree, workspace: str) Tuple[ConfigTree, Set[str]][source]

Remove entries whose canonical or lexical paths are under the workspace path.

remove_startup_kit_entry(config: ConfigTree, kit_id: str) ConfigTree[source]
resolve_admin_user_and_dir_from_startup_kit(startup_kit_dir: str) Tuple[str, str][source]

Resolve admin username and normalized admin user dir from a startup kit path.

resolve_startup_kit_dir() str[source]

Resolve env var or active config to a validated admin user dir.

resolve_startup_kit_dir_by_id(kit_id: str) str[source]

Resolve a registered startup-kit ID to a validated admin user dir without changing active config.

save_cli_config(config: ConfigTree) None[source]

Atomically write ~/.nvflare/config.conf as config schema version 2.

set_active_startup_kit(config: ConfigTree, kit_id: str) ConfigTree[source]

Validate ID and path, then set startup_kits.active.

validate_admin_startup_kit(path: str) str[source]

Return normalized admin user dir. Raise StartupKitConfigError on invalid kit.

validate_startup_kit(path: str) str[source]

Return normalized participant dir for any generated startup kit.