Skip to main content

Crate velos_runtime

Crate velos_runtime 

Source
Expand description

The container runtime seam (Principle #3, deep module).

veloslet drives micro-VMs only through the ContainerRuntime trait, so the Apple Containerization container CLI can be swapped for Tart, Linux, or a fake without touching the worker’s reconcile logic. Every instance is keyed by its Velos container uid, which makes actuation idempotent: reconcile after a crash matches existing instances by uid before launching.

Backends today: AppleContainer (real) and FakeRuntime (tests). A Linux backend (e.g. via podman/runc or a libkrun micro-VM) is the planned next addition behind this same trait — tracked separately, not in this change.

Structs§

AppleContainer
Real backend: shells out to the container CLI via tokio::process.
FakeRuntime
An in-memory runtime used by tests and velos-tests. Exit can be simulated with FakeRuntime::set_exited.
Instance
One instance the runtime is tracking, tagged with its Velos uid.
InstanceId
The runtime-local identifier of a launched instance.
RunSpec
What veloslet asks the runtime to launch.

Enums§

InstanceState
Observed liveness of an instance. There is no “assumed running”: an instance the runtime cannot account for simply isn’t in list.
RuntimeError

Traits§

ContainerRuntime