Foundation Deployment Platform — VM/container orchestration.
Quick Start (VM)
The VM surface (config, qemu, …) is gated behind the vms feature, so
this example is ignored in the default (Docker-only) build — build with
--features vms to use it.
use foundation_deployment_platform::config::{get_profile, DisplayMode};
use foundation_deployment_platform::qemu::QemuConfig;
let profile = get_profile("windows-build").unwrap();
let vm = QemuConfig::new(profile.clone(), DisplayMode::Headless)
.launch()
.unwrap();
Architecture
- config — VM profiles, guest OS types, display modes, error types
- docker — Container lifecycle (ContainerHandle, ContainerConfig, WaitFor)
- qemu — Process management, disk operations, networking, snapshots, downloads
- providers — Provider trait + Docker/QEMU/UTM backends
- ssh — SSH connections and command execution on guests
- winrm — WinRM SOAP client for Windows guest bootstrapping
- import — Image download, cache management, Vagrant Cloud integration
- bootstrap — VM bootstrapping with mise + nushell
- build — Build pipeline, code sync, artifact retrieval
- runner — Binary launcher, screenshots, logs, file transfer, UI automation
- state — Persistent VM state management
- doctor — Host and VM health checks
- init — Project scaffolding (testbed init, scripts, .gitignore)
- host_bootstrap — Host prerequisites (mise, nushell, pitchfork)