API reference#

Public API for runpod-deploy. Six modules:

Module

Role

Public surface

runpod_deploy.config

YAML config schema + loader

15 frozen *Spec dataclasses, 4 constants, 3 functions (load_job_spec, build_job_context, validate_local_paths)

runpod_deploy.orchestrator

The run_job entry point that ties everything together

run_job

runpod_deploy.provider

runpodctl-backed pod provisioning + GPU selection

PodConnection, resolve_volume, select_gpu_across_datacenters

runpod_deploy.pricing

GPU price catalog + selection

GpuPrice, fetch_gpu_prices, select_price_for_pod

runpod_deploy.transport

SSH + rsync primitives

RemoteRunner, RemoteRunError, rsync_argv

runpod_deploy.metadata

Reproducibility-manifest capture helpers

capture_local_git, capture_payload_lockfile

All public symbols listed above are also re-exported from runpod_deploy.__all__, so they can be imported directly:

from runpod_deploy import load_job_spec, build_job_context, run_job

Per CLAUDE.md §5, all dataclasses are frozen + slotted; their constructors validate via __post_init__ and raise stdlib exceptions (ValueError, TypeError, RuntimeError) on bad input.