Expand description
§Halldyll Deploy Pods
A declarative, idempotent, and reconcilable deployment system for RunPod GPU pods.
§Overview
Halldyll provides a Kubernetes-like deployment experience for RunPod, allowing you to:
- Define your infrastructure as code in a YAML configuration file
- Deploy and manage multi-pod GPU workloads
- Automatically reconcile drift between desired and actual state
- Track deployment history and state
§Architecture
The system is built around the concept of desired state reconciliation:
- Desired State: Defined in
halldyll.deploy.yaml - Observed State: Queried from
RunPodAPI - Reconciler: Compares states and executes necessary actions
§Modules
config: Configuration parsing and validationstate: State storage backends (local, S3)runpod:RunPodAPI client and provisioningplanner: Diff computation and execution planningreconciler: State reconciliation enginecli: Command-line interface
§Example
project:
name: my-ml-stack
environment: prod
pods:
- name: inference
gpu:
type: "NVIDIA A40"
count: 1
runtime:
image: ghcr.io/my-org/inference:latest
ports:
- "8000/http"Re-exports§
pub use cli::Cli;pub use cli::Commands;pub use cli::OutputFormatter;pub use config::ConfigHasher;pub use config::ConfigParser;pub use config::ConfigValidator;pub use config::DeployConfig;pub use error::HalldyllError;pub use error::Result;pub use planner::DeploymentPlan;pub use planner::DiffEngine;pub use planner::PlanExecutor;pub use reconciler::DriftReport;pub use reconciler::ReconciliationResult;pub use reconciler::Reconciler;pub use runpod::HealthChecker;pub use runpod::PodObserver;pub use runpod::PodProvisioner;pub use runpod::RunPodClient;pub use runpod::PodExecutor;pub use runpod::CommandResult;pub use runpod::ModelSetupResult;pub use runpod::EngineStartResult;pub use runpod::PostProvisionResult;pub use state::DeploymentState;pub use state::LocalStateStore;pub use state::S3StateStore;pub use state::StateStore;
Modules§
- cli
- CLI module for the Halldyll deployment tool.
- config
- Configuration module for Halldyll deployment system.
- error
- Error types for the Halldyll deployment system.
- planner
- Planning module for deployment operations.
- reconciler
- Reconciler for maintaining desired state.
- runpod
RunPodAPI integration module.- state
- State management module for Halldyll deployment system.