Expand description
Manifest to deployment artifact transpilation for LightShuttle.
The export pipeline follows a compiler shape: lower turns a
parsed lightshuttle-manifest into a neutral ExportModel by
resolving every resource through lightshuttle-spec, then a target
Emitter renders that model into ExportArtifacts. Per-target
defaults and overrides are resolved by the pure helpers in
resolve, shared by every emitter.
This crate carries no container daemon dependency: it only reads the manifest and the resolved specification, so it transpiles the same way on a developer machine or in CI without Docker.
Modules§
- resolve
- Pure resolution of per-target defaults and overrides.
Structs§
- Compose
Emitter - Emits a
docker-compose.ymlfrom the export model. - Export
Artifacts - A set of named files produced by an emitter, written to disk by the CLI.
- Export
File - A single emitted file: a relative path and its textual contents.
- Export
Model - Target-agnostic model of a stack ready to be emitted.
- Export
Project - Project metadata relevant to an export.
- Export
Service - One service in the export model: a resolved container specification plus the resources it depends on.
- Helm
Emitter - Emits a Helm chart from the export model.
- Kubernetes
Emitter - Emits plain Kubernetes manifests from the export model.
Enums§
- Export
Error - Errors raised while lowering a manifest or emitting artifacts.
- Target
- Supported export targets.
Traits§
- Emitter
- Transpiles an
ExportModelinto the files of a single target.
Functions§
- lower
- Lower
manifestinto anExportModel.
Type Aliases§
- Result
- Shorthand alias for
std::result::Result<T, ExportError>.