use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, gen_macros::TypedDispatcher, gen_macros::Discriminant, gen_macros::IsVariant)]
#[serde(tag = "kind", rename_all = "kebab-case")]
pub enum HelmQuirk {
OverrideValue { path: String, value: serde_json::Value },
SkipHook { hook: String },
PatchManifest { resource_kind: String, name: String, jsonpath: String, value: serde_json::Value },
ForceImageTag { container: String, tag: String },
}
pub fn registry() -> Vec<(&'static str, Vec<HelmQuirk>)> {
Vec::new()
}
#[derive(gen_macros::QuirkRegistry)]
#[quirks(enum_name = "HelmQuirk", registry_fn = "crate::quirks::registry")]
pub struct HelmQuirks;
gen_platform::register_dispatcher!("gen.helm.helm-quirk", HelmQuirk);