Warm Pools (VM Pools)
Purpose
Warm Pools — keep N VMs pre-booted and paused from a chosen disk image so you can claim one instantly instead of cold-creating. Each pool shows ready members vs size, vCPUs/memory, and the image path.
In the UI and Core nav this is Warm Pools (/app/vm-pools). Older docs may say “VM Pools.”
When to use it
- To cut provision latency for bursty or CI-style workloads
- To keep a standing set of identical paused members ready to claim
- To claim a ready member into a named running VM and jump straight to its detail page
- To tear down a pool (and its members) when you no longer need the capacity
How to get there
- Route / id:
/app/vm-pools - Nav: Core → Warm Pools (sidebar, command palette, or desktop nav)
Operate from the console (UX)
- On first visit with no pools, the empty state explains the feature and offers Create Pool.
- Create Pool — pool name, disk image (from catalog), size (member count), vCPUs, memory → submit. A success toast notes that members are booting; the ready count climbs as they pause.
- Each pool card shows name, image path, Ready to claim
ready / sizewith a progress bar, and vCPU/memory. - Claim Instantly — enabled only when
ready_members > 0. Enter the VM name to assign; on success you navigate to/app/vms/:name. - Delete (trash) — confirmation warns that the pool and its pre-booted members will be removed; member teardown continues in the background after the pool disappears from the list.
- Empty / fail: Load error banner with retry; create/claim/delete toasts on failure; Claim disabled when no ready members (tooltip: “No ready members right now”).
- Success: Pool card appears with rising ready count; claim opens the new VM detail page with a success toast.