nvflare.app_opt.job_launcher.workspace_cell_transfer module

CellNet-based workspace transfer for launched jobs.

The parent process exposes a small transfer service on its existing CellNet cell. Launched job pods create short-lived bootstrap child cells to:

  1. request a workspace bundle from the parent

  2. upload final job results back to the parent

The actual payload transfer uses the existing F3 file downloader infrastructure, so large bundles move in chunks instead of being buffered into a single message.

class WorkspaceTransferManager(cell: Cell, download_timeout: float = 600.0, per_request_timeout: float = 300.0)[source]

Bases: object

Manage per-job workspace transfer over an existing CellNet cell.

add_job(job_id: str, workspace_root: str) str[source]
classmethod get_or_create(cell: Cell) WorkspaceTransferManager[source]

Return the per-cell manager, constructing one on first use.

remove_job(job_id: str) None[source]
download_workspace(args, secure_mode: bool) None[source]
make_workspace_transfer_fqcn(owner_fqcn: str, job_id: str) str[source]
upload_results(args, secure_mode: bool) None[source]
upload_results_safely(args, secure_mode: bool, log=None) None[source]