Skip to main content

Crate lightshuttle_spec

Crate lightshuttle_spec 

Source
Expand description

Manifest to container specification resolution for LightShuttle.

This crate is the single source of truth that turns a typed lightshuttle-manifest resource declaration into a self-contained ContainerSpec, applying the v0 defaults (image expansion, database name derivation, random password generation, healthcheck materialisation) and computing the ResourceOutputs a resource exposes to its dependents.

The resolution is intentionally free of any container daemon dependency, so both the runtime and the export pipeline can consume it without drift.

Structs§

ContainerSpec
Self-contained description of a container to start, derived from a manifest resource.
HealthcheckSpec
Healthcheck resolved from the manifest, with manifest-side durations already parsed.
PortBinding
Port mapping resolved from the manifest.
ResolvedResource
A ContainerSpec together with the outputs the resource exposes to its dependents at runtime.
VolumeBinding
Volume mapping resolved from the manifest.

Enums§

ImageSource
How the container image is obtained.
SpecError
Errors raised while building a crate::ContainerSpec from a manifest resource declaration.
VolumeSource
Where the volume content lives.

Functions§

from_resource
Build a ContainerSpec from a manifest resource declaration.

Type Aliases§

ResourceOutputs
Properties a managed resource exposes to its dependents.
Result
Shorthand alias for std::result::Result<T, SpecError>.