Skip to main content

helm_schema/
lib.rs

1//! Library facade for chart analysis and Helm values schema generation.
2
3mod analysis;
4mod chart;
5/// Root chart source opening for directories and packaged archives.
6pub mod chart_source;
7mod error;
8mod fetch_policy;
9/// JSON Schema reference bundling and inlining.
10pub mod flatten;
11/// Schema-generation inputs and staged output artifacts.
12pub mod generation;
13mod load_budget;
14mod output_pipeline;
15mod provider_builder;
16/// Deterministic merge policy for caller-supplied override schemas.
17pub mod schema_override;
18mod session;
19mod values_roots;
20
21#[cfg(test)]
22#[path = "tests/mod.rs"]
23mod tests;
24
25/// Runtime diagnostics produced by Kubernetes and CRD schema lookup.
26pub mod diagnostics {
27    pub use helm_schema_k8s::{
28        Diagnostic, DiagnosticKey, DiagnosticSink, format_diagnostic_json, format_diagnostic_text,
29    };
30}
31
32/// Stable inspection types for the recovered Helm contract.
33pub mod contract {
34    pub use helm_schema_ir::{
35        ContractDocument, ContractProvenance, ContractUse, Guard, SourceSpan, ValueKind,
36    };
37}
38
39/// Final schema output policy and serialization APIs.
40pub mod output {
41    pub use crate::fetch_policy::FetchPolicy;
42    pub use crate::load_budget::LoadBudget;
43    pub use crate::output_pipeline::{
44        EmitRequest, FinalOutputMetrics, JsonOutputFormat, OutputPipelineOptions,
45        PolicyInputOptions, ReferencePolicy, write_schema_json,
46    };
47}
48
49/// Kubernetes and CRD provider configuration types.
50pub mod provider {
51    pub use crate::provider_builder::ProviderOptions;
52    pub use helm_schema_k8s::{K8sVersionChain, LocalSchemaUniverse};
53}
54
55pub use session::{Analysis, AnalysisSession, ValuePathExplanation};
56
57pub use error::{CliError, EngineResult};
58pub use generation::{GenerateOptions, GeneratedSchema, ResolvedContract};