runpod_deploy.config#

Strict YAML config loader plus 15 frozen *Spec dataclasses that mirror the v2 schema. The loader rejects unknown fields; each *Spec’s __post_init__ validates ranges, identifiers, and required combinations and raises ValueError / TypeError with a diagnostic message.

Constants

DEFAULT_STAGING_EXCLUDES

Built-in immutable sequence.

SCHEMA_VERSION

int([x]) -> integer int(x, base=10) -> integer

STORAGE_EPHEMERAL

str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str

STORAGE_NETWORK_VOLUME

str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str

Loader + context

load_job_spec

Load a strict v1 YAML config.

build_job_context

Resolve template variables for one run.

validate_local_paths

Validate local required paths declared by the job.

JobContext

Resolved config-path and template state for one invocation.

RunpodJobSpec

Complete single-job v1 config.

Pod, storage, and run-script specs

PodSpec

RunPod pod provisioning settings.

StorageSpec

RunPod storage settings.

RunSpec

Detached remote run script settings.

CommandSpec

One remote shell command.

SshSpec

SSH settings for pod access.

LifecyclePolicySpec

Pod lifecycle action to take after a run succeeds or fails.

Staging, secrets, and artifacts

RsyncPushSpec

One local-to-remote rsync push.

SecretSpec

One staged secret file on the pod.

ArtifactPullSpec

One remote-to-local artifact pull.

LocalSpec

Local repo paths used by a job config.

Environment, budget, and telemetry

RemoteEnvSpec

Remote environment sourced before selected commands.

BudgetSpec

Cost and monitoring limits.

TelemetrySpec

Pod-side telemetry capture knobs.