helm_schema_cli/cli/
mod.rs1mod chart_args;
2mod crd_args;
3mod diag_args;
4mod inference_args;
5mod k8s_args;
6mod output_args;
7mod perf_args;
8
9use std::path::PathBuf;
10
11use clap::Parser;
12
13pub use chart_args::ChartArgs;
14pub use crd_args::{CrdArgs, CrdVersionLookup};
15pub use diag_args::{DiagArgs, DiagFormat};
16pub use inference_args::InferenceArgs;
17pub use k8s_args::{DEFAULT_AUTO_WINDOW, K8sArgs, K8sVersionFallback};
18pub use output_args::OutputArgs;
19pub use perf_args::PerfArgs;
20
21#[derive(Parser, Debug, Clone)]
23#[command(
24 name = "helm-schema",
25 about = "Generate JSON schema for Helm values.yaml"
26)]
27pub struct Cli {
28 #[arg(value_name = "CHART_DIR")]
30 pub chart_dir: PathBuf,
31
32 #[command(flatten)]
34 pub output: OutputArgs,
35
36 #[command(flatten)]
38 pub k8s: K8sArgs,
39
40 #[command(flatten)]
42 pub crd: CrdArgs,
43
44 #[command(flatten)]
46 pub inference: InferenceArgs,
47
48 #[command(flatten)]
50 pub diag: DiagArgs,
51
52 #[command(flatten)]
54 pub chart: ChartArgs,
55
56 #[command(flatten)]
58 pub perf: PerfArgs,
59
60 #[arg(long)]
65 pub override_schema: Vec<PathBuf>,
66}