diff --git a/src/analyzer.rs b/src/analyzer.rs index 17896a2..a17f5ed 100644 --- a/src/analyzer.rs +++ b/src/analyzer.rs @@ -23,7 +23,7 @@ pub struct Config { pub fn analyze(schema: JSONSchemaProps, kind: &str, cfg: Config) -> Result { let mut res = vec![]; - analyze_(&schema, "", &kind.to_upper_camel_case(), 0, &mut res, &cfg)?; + analyze_(&schema, "", kind, 0, &mut res, &cfg)?; Ok(Output(res)) } @@ -45,6 +45,8 @@ fn analyze_( let props = schema.properties.clone().unwrap_or_default(); let mut array_recurse_level: HashMap = Default::default(); + let camel_cased_stack = &stack.to_upper_camel_case(); + // create a Container if we have a container type: //trace!("analyze_ with {} + {}", current, stack); if schema.type_.clone().unwrap_or_default() == "object" { @@ -55,29 +57,46 @@ fn analyze_( // object with additionalProperties == map if let Some(extra_props) = &s.properties { // map values is an object with properties - debug!("Generating map struct for {} (under {})", current, stack); - let c = extract_container(extra_props, stack, &mut array_recurse_level, level, schema, cfg)?; + debug!( + "Generating map struct for {} (under {})", + current, camel_cased_stack + ); + let c = extract_container( + extra_props, + camel_cased_stack, + &mut array_recurse_level, + level, + schema, + cfg, + )?; results.push(c); } else if dict_type == "object" { // recurse to see if we eventually find properties debug!( "Recursing into nested additional properties for {} (under {})", - current, stack + current, camel_cased_stack ); - analyze_(s, current, stack, level, results, cfg)?; + analyze_(s, current, camel_cased_stack, level, results, cfg)?; } else if !dict_type.is_empty() { warn!("not generating type {} - using {} map", current, dict_type); return Ok(()); // no members here - it'll be inlined } } else { // else, regular properties only - debug!("Generating struct for {} (under {})", current, stack); + debug!("Generating struct for {} (under {})", current, camel_cased_stack); // initial analysis of properties (we do not recurse here, we need to find members first) if props.is_empty() && schema.x_kubernetes_preserve_unknown_fields.unwrap_or(false) { warn!("not generating type {} - using map", current); return Ok(()); } - let c = extract_container(&props, stack, &mut array_recurse_level, level, schema, cfg)?; + let c = extract_container( + &props, + camel_cased_stack, + &mut array_recurse_level, + level, + schema, + cfg, + )?; results.push(c); } } @@ -91,10 +110,24 @@ fn analyze_( // again; additionalProperties XOR properties let extras = if let Some(JSONSchemaPropsOrBool::Schema(s)) = schema.additional_properties.as_ref() { let extra_props = s.properties.clone().unwrap_or_default(); - find_containers(&extra_props, stack, &mut array_recurse_level, level, schema, cfg)? + find_containers( + &extra_props, + camel_cased_stack, + &mut array_recurse_level, + level, + schema, + cfg, + )? } else { // regular properties only - find_containers(&props, stack, &mut array_recurse_level, level, schema, cfg)? + find_containers( + &props, + camel_cased_stack, + &mut array_recurse_level, + level, + schema, + cfg, + )? }; results.extend(extras); @@ -1317,6 +1350,34 @@ type: object assert_eq!(other.level, 1); } + #[test] + fn camel_case_of_kinds_with_consecutive_upper_case_letters() { + init(); + let schema_str = r#" + properties: + spec: + type: object + status: + type: object + type: object +"#; + let schema: JSONSchemaProps = serde_yaml::from_str(schema_str).unwrap(); + + let structs = analyze(schema, "ArgoCDExport", Cfg::default()).unwrap().0; + + let root = &structs[0]; + assert_eq!(root.name, "ArgoCdExport"); + assert_eq!(root.level, 0); + + let spec = &structs[1]; + assert_eq!(spec.name, "ArgoCdExportSpec"); + assert_eq!(spec.level, 1); + + let status = &structs[2]; + assert_eq!(status.name, "ArgoCdExportStatus"); + assert_eq!(status.level, 1); + } + #[test] fn skipped_type_as_map_nested_in_array() { init(); diff --git a/src/main.rs b/src/main.rs index ecf6650..7799727 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,6 +2,7 @@ use std::{path::PathBuf, str::FromStr}; #[macro_use] extern crate log; use anyhow::{anyhow, Context, Result}; use clap::{CommandFactory, Parser, Subcommand}; +use heck::ToUpperCamelCase; use k8s_openapi::apiextensions_apiserver::pkg::apis::apiextensions::v1::{ CustomResourceDefinition, CustomResourceDefinitionVersion, }; @@ -281,7 +282,7 @@ impl Kopium { .is_some_and(|c| c.contains_key("status"))) && self.has_status_resource(&structs) { - println!(r#"#[kube(status = "{}Status")]"#, kind); + println!(r#"#[kube(status = "{}Status")]"#, kind.to_upper_camel_case()); } if self.schema != "derived" { println!(r#"#[kube(schema = "{}")]"#, self.schema); @@ -306,7 +307,10 @@ impl Kopium { } } else { self.print_derives(s, &structs); - let spec_trimmed_name = s.name.as_str().replace(&format!("{}Spec", kind), kind); + let spec_trimmed_name = s.name.as_str().replace( + &format!("{}Spec", kind.to_upper_camel_case()), + &kind.to_upper_camel_case(), + ); if s.is_enum { println!("pub enum {} {{", spec_trimmed_name); } else { @@ -322,7 +326,10 @@ impl Kopium { for annot in &m.extra_annot { println!(" {}", annot); } - let spec_trimmed_type = m.type_.as_str().replace(&format!("{}Spec", kind), kind); + let spec_trimmed_type = m.type_.as_str().replace( + &format!("{}Spec", kind.to_upper_camel_case()), + &kind.to_upper_camel_case(), + ); if s.is_enum { // NB: only supporting plain enumerations atm, not oneOf println!(" {},", name); diff --git a/src/output.rs b/src/output.rs index 3afb56d..449524f 100644 --- a/src/output.rs +++ b/src/output.rs @@ -212,7 +212,7 @@ impl Container { } impl Output { - /// Rename all structs and all all their members to rust conventions + /// Rename all structs and all their members to rust conventions /// /// Converts [*].members[*].name to snake_case for structs, PascalCase for enums, /// and adds a serde(rename = "orig_name") annotation to `serde_annot`. diff --git a/tests/cmd/generate/from-file-with-auto.md b/tests/cmd/generate/from-file-with-auto.md index 8490311..72db06c 100644 --- a/tests/cmd/generate/from-file-with-auto.md +++ b/tests/cmd/generate/from-file-with-auto.md @@ -20,7 +20,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, JsonSchema)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] pub struct ApiSpec { /// An API key selection expression. Supported only for WebSocket APIs. See API /// Key Selection Expressions ( @@ -39,7 +39,7 @@ pub struct ApiSpec { /// ( /// for more information. #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, /// This property is part of quick create. It specifies the credentials required /// for the integration, if any. For a Lambda integration, three options are /// available. To specify an IAM Role for API Gateway to assume, use the role's @@ -103,7 +103,7 @@ pub struct ApiSpec { /// ( /// for more information. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, /// Represents a collection of allowed headers. Supported only for HTTP APIs. @@ -209,7 +209,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, JsonSchema)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] pub struct ArgoCdExportSpec { /// Argocd is the name of the ArgoCD instance to export. pub argocd: String, @@ -221,7 +221,7 @@ pub struct ArgoCdExportSpec { pub schedule: Option, /// Storage defines the storage configuration options. #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, /// Version is the tag/digest to use for the export Job container image. #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, @@ -229,13 +229,13 @@ pub struct ArgoCdExportSpec { /// Storage defines the storage configuration options. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { /// Backend defines the storage backend to use, must be "local" (the default), "aws", "azure" or "gcp". #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, /// PVC is the desired characteristics for a PersistentVolumeClaim. #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, /// SecretName is the name of a Secret with encryption key, credentials, etc. #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, @@ -243,7 +243,7 @@ pub struct ArgoCdExportSpecStorage { /// PVC is the desired characteristics for a PersistentVolumeClaim. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { /// accessModes contains the desired access modes the volume should have. /// More info: #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] @@ -257,7 +257,7 @@ pub struct ArgoCdExportSpecStoragePvc { /// and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. /// If the namespace is specified, then dataSourceRef will not be copied to dataSource. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, /// dataSourceRef specifies the object from which to populate the volume with data, if a non-empty /// volume is desired. This may be any object from a non-empty API group (non /// core object) or a PersistentVolumeClaim object. @@ -282,17 +282,17 @@ pub struct ArgoCdExportSpecStoragePvc { /// (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. /// (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, /// resources represents the minimum resources the volume should have. /// If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements /// that are lower than previous value but must still be higher than capacity recorded in the /// status field of the claim. /// More info: #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, /// selector is a label query over volumes to consider for binding. #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, /// storageClassName is the name of the StorageClass required by the claim. /// More info: #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] @@ -329,7 +329,7 @@ pub struct ArgoCdExportSpecStoragePvc { /// and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. /// If the namespace is specified, then dataSourceRef will not be copied to dataSource. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { /// APIGroup is the group for the resource being referenced. /// If APIGroup is not specified, the specified Kind must be in the core API group. /// For any other third-party types, APIGroup is required. @@ -365,7 +365,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { /// (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. /// (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { /// APIGroup is the group for the resource being referenced. /// If APIGroup is not specified, the specified Kind must be in the core API group. /// For any other third-party types, APIGroup is required. @@ -388,7 +388,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { /// status field of the claim. /// More info: #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { /// Limits describes the maximum amount of compute resources allowed. /// More info: #[serde(default, skip_serializing_if = "Option::is_none")] @@ -403,10 +403,10 @@ pub struct ArgoCdExportSpecStoragePvcResources { /// selector is a label query over volumes to consider for binding. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels /// map is equivalent to an element of matchExpressions, whose key field is "key", the /// operator is "In", and the values array contains only "value". The requirements are ANDed. @@ -417,7 +417,7 @@ pub struct ArgoCdExportSpecStoragePvcSelector { /// A label selector requirement is a selector that contains values, a key, and an operator that /// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, /// operator represents a key's relationship to a set of values. @@ -655,13 +655,13 @@ use self::prelude::*; #[kube(namespaced)] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -698,11 +698,11 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] @@ -710,16 +710,16 @@ pub struct PostgresqlSpec { /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -733,15 +733,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, @@ -753,11 +753,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -772,7 +772,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -791,17 +791,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -809,7 +809,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -817,15 +817,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -833,7 +833,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -841,29 +841,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -871,7 +871,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -879,21 +879,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -901,7 +901,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -909,7 +909,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -935,14 +935,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -956,19 +956,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -976,15 +976,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -996,7 +996,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -1008,7 +1008,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1020,7 +1020,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -1034,11 +1034,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -1052,7 +1052,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -1066,13 +1066,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1080,26 +1080,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -1110,23 +1110,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, JsonSchema)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In, diff --git a/tests/cmd/generate/from-file-with-derive-default.md b/tests/cmd/generate/from-file-with-derive-default.md index 29535d0..dc39464 100644 --- a/tests/cmd/generate/from-file-with-derive-default.md +++ b/tests/cmd/generate/from-file-with-derive-default.md @@ -16,7 +16,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] #[kube(schema = "disabled")] #[kube(derive="Default")] pub struct ApiSpec { @@ -27,7 +27,7 @@ pub struct ApiSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub body: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialsARN")] pub credentials_arn: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -55,7 +55,7 @@ pub struct ApiSpec { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowHeaders")] @@ -120,7 +120,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] #[kube(schema = "disabled")] #[kube(derive="Default")] pub struct ArgoCdExportSpec { @@ -130,33 +130,33 @@ pub struct ArgoCdExportSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub schedule: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] pub storage_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")] @@ -168,7 +168,7 @@ pub struct ArgoCdExportSpecStoragePvc { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -176,7 +176,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -186,7 +186,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -194,15 +194,15 @@ pub struct ArgoCdExportSpecStoragePvcResources { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -328,13 +328,13 @@ use self::prelude::*; #[kube(derive="Default")] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -370,26 +370,26 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] pub pod_priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -403,15 +403,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -422,11 +422,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -441,7 +441,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -460,17 +460,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -478,7 +478,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -486,15 +486,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -502,7 +502,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -510,29 +510,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -540,7 +540,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -548,21 +548,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -570,7 +570,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -578,7 +578,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -604,14 +604,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -625,19 +625,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -645,15 +645,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -665,7 +665,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -677,7 +677,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -689,7 +689,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -703,11 +703,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -721,7 +721,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -735,13 +735,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -749,26 +749,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -779,23 +779,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, Default)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In, diff --git a/tests/cmd/generate/from-file-with-derive-partialeq.md b/tests/cmd/generate/from-file-with-derive-partialeq.md index 0b05ea4..dfd7be5 100644 --- a/tests/cmd/generate/from-file-with-derive-partialeq.md +++ b/tests/cmd/generate/from-file-with-derive-partialeq.md @@ -16,7 +16,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, PartialEq)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] #[kube(schema = "disabled")] #[kube(derive="PartialEq")] pub struct ApiSpec { @@ -27,7 +27,7 @@ pub struct ApiSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub body: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialsARN")] pub credentials_arn: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -55,7 +55,7 @@ pub struct ApiSpec { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowHeaders")] @@ -120,7 +120,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, PartialEq)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] #[kube(schema = "disabled")] #[kube(derive="PartialEq")] pub struct ArgoCdExportSpec { @@ -130,33 +130,33 @@ pub struct ArgoCdExportSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub schedule: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] pub storage_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")] @@ -168,7 +168,7 @@ pub struct ArgoCdExportSpecStoragePvc { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -176,7 +176,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -186,7 +186,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -194,15 +194,15 @@ pub struct ArgoCdExportSpecStoragePvcResources { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -328,13 +328,13 @@ use self::prelude::*; #[kube(derive="PartialEq")] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -370,26 +370,26 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] pub pod_priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -403,15 +403,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -422,11 +422,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -441,7 +441,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -460,17 +460,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -478,7 +478,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -486,15 +486,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -502,7 +502,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -510,29 +510,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -540,7 +540,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -548,21 +548,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -570,7 +570,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -578,7 +578,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -604,14 +604,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -625,19 +625,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -645,15 +645,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -665,7 +665,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -677,7 +677,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -689,7 +689,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -703,11 +703,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -721,7 +721,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -735,13 +735,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -749,26 +749,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -779,23 +779,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In, diff --git a/tests/cmd/generate/from-file-with-docs.md b/tests/cmd/generate/from-file-with-docs.md index b1c8c28..04c07a6 100644 --- a/tests/cmd/generate/from-file-with-docs.md +++ b/tests/cmd/generate/from-file-with-docs.md @@ -19,7 +19,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] #[kube(schema = "disabled")] pub struct ApiSpec { /// An API key selection expression. Supported only for WebSocket APIs. See API @@ -39,7 +39,7 @@ pub struct ApiSpec { /// ( /// for more information. #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, /// This property is part of quick create. It specifies the credentials required /// for the integration, if any. For a Lambda integration, three options are /// available. To specify an IAM Role for API Gateway to assume, use the role's @@ -103,7 +103,7 @@ pub struct ApiSpec { /// ( /// for more information. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, /// Represents a collection of allowed headers. Supported only for HTTP APIs. @@ -208,7 +208,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] #[kube(schema = "disabled")] pub struct ArgoCdExportSpec { /// Argocd is the name of the ArgoCD instance to export. @@ -221,7 +221,7 @@ pub struct ArgoCdExportSpec { pub schedule: Option, /// Storage defines the storage configuration options. #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, /// Version is the tag/digest to use for the export Job container image. #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, @@ -229,13 +229,13 @@ pub struct ArgoCdExportSpec { /// Storage defines the storage configuration options. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { /// Backend defines the storage backend to use, must be "local" (the default), "aws", "azure" or "gcp". #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, /// PVC is the desired characteristics for a PersistentVolumeClaim. #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, /// SecretName is the name of a Secret with encryption key, credentials, etc. #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, @@ -243,7 +243,7 @@ pub struct ArgoCdExportSpecStorage { /// PVC is the desired characteristics for a PersistentVolumeClaim. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { /// accessModes contains the desired access modes the volume should have. /// More info: #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] @@ -257,7 +257,7 @@ pub struct ArgoCdExportSpecStoragePvc { /// and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. /// If the namespace is specified, then dataSourceRef will not be copied to dataSource. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, /// dataSourceRef specifies the object from which to populate the volume with data, if a non-empty /// volume is desired. This may be any object from a non-empty API group (non /// core object) or a PersistentVolumeClaim object. @@ -282,17 +282,17 @@ pub struct ArgoCdExportSpecStoragePvc { /// (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. /// (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, /// resources represents the minimum resources the volume should have. /// If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements /// that are lower than previous value but must still be higher than capacity recorded in the /// status field of the claim. /// More info: #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, /// selector is a label query over volumes to consider for binding. #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, /// storageClassName is the name of the StorageClass required by the claim. /// More info: #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] @@ -329,7 +329,7 @@ pub struct ArgoCdExportSpecStoragePvc { /// and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. /// If the namespace is specified, then dataSourceRef will not be copied to dataSource. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { /// APIGroup is the group for the resource being referenced. /// If APIGroup is not specified, the specified Kind must be in the core API group. /// For any other third-party types, APIGroup is required. @@ -365,7 +365,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { /// (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. /// (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { /// APIGroup is the group for the resource being referenced. /// If APIGroup is not specified, the specified Kind must be in the core API group. /// For any other third-party types, APIGroup is required. @@ -388,7 +388,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { /// status field of the claim. /// More info: #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { /// Limits describes the maximum amount of compute resources allowed. /// More info: #[serde(default, skip_serializing_if = "Option::is_none")] @@ -403,10 +403,10 @@ pub struct ArgoCdExportSpecStoragePvcResources { /// selector is a label query over volumes to consider for binding. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels /// map is equivalent to an element of matchExpressions, whose key field is "key", the /// operator is "In", and the values array contains only "value". The requirements are ANDed. @@ -417,7 +417,7 @@ pub struct ArgoCdExportSpecStoragePvcSelector { /// A label selector requirement is a selector that contains values, a key, and an operator that /// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, /// operator represents a key's relationship to a set of values. @@ -655,13 +655,13 @@ use self::prelude::*; #[kube(schema = "disabled")] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -698,11 +698,11 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] @@ -710,16 +710,16 @@ pub struct PostgresqlSpec { /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -733,15 +733,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, /// deprecated #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, @@ -753,11 +753,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -772,7 +772,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -791,17 +791,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -809,7 +809,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -817,15 +817,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -833,7 +833,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -841,29 +841,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -871,7 +871,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -879,21 +879,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -901,7 +901,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -909,7 +909,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -935,14 +935,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -956,19 +956,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -976,15 +976,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -996,7 +996,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -1008,7 +1008,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1020,7 +1020,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -1034,11 +1034,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -1052,7 +1052,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -1066,13 +1066,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1080,26 +1080,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -1110,23 +1110,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In, diff --git a/tests/cmd/generate/from-file-with-smart-derive-elision.md b/tests/cmd/generate/from-file-with-smart-derive-elision.md index 19dc7d5..98fb42b 100644 --- a/tests/cmd/generate/from-file-with-smart-derive-elision.md +++ b/tests/cmd/generate/from-file-with-smart-derive-elision.md @@ -16,7 +16,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, PartialEq, Default)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] #[kube(schema = "disabled")] #[kube(derive="PartialEq")] #[kube(derive="Default")] @@ -28,7 +28,7 @@ pub struct ApiSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub body: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialsARN")] pub credentials_arn: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -56,7 +56,7 @@ pub struct ApiSpec { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowHeaders")] @@ -121,7 +121,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, PartialEq, Default)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] #[kube(schema = "disabled")] #[kube(derive="PartialEq")] #[kube(derive="Default")] @@ -132,33 +132,33 @@ pub struct ArgoCdExportSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub schedule: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] pub storage_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")] @@ -170,7 +170,7 @@ pub struct ArgoCdExportSpecStoragePvc { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -178,7 +178,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -188,7 +188,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -196,15 +196,15 @@ pub struct ArgoCdExportSpecStoragePvcResources { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -331,13 +331,13 @@ use self::prelude::*; #[kube(derive="PartialEq")] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -373,26 +373,26 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] pub pod_priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -406,15 +406,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -425,11 +425,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -444,7 +444,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -463,17 +463,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -481,7 +481,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -489,15 +489,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -505,7 +505,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -513,29 +513,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -543,7 +543,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -551,21 +551,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -573,7 +573,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -581,7 +581,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -607,14 +607,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -628,19 +628,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -648,15 +648,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -668,7 +668,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -680,7 +680,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -692,7 +692,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -706,11 +706,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -724,7 +724,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -738,13 +738,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -752,26 +752,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -782,23 +782,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Default)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In, diff --git a/tests/cmd/generate/from-file.md b/tests/cmd/generate/from-file.md index 93f737d..46513da 100644 --- a/tests/cmd/generate/from-file.md +++ b/tests/cmd/generate/from-file.md @@ -16,7 +16,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug)] #[kube(group = "apigatewayv2.services.k8s.aws", version = "v1alpha1", kind = "API", plural = "apis")] #[kube(namespaced)] -#[kube(status = "APIStatus")] +#[kube(status = "ApiStatus")] #[kube(schema = "disabled")] pub struct ApiSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKeySelectionExpression")] @@ -26,7 +26,7 @@ pub struct ApiSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub body: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "corsConfiguration")] - pub cors_configuration: Option, + pub cors_configuration: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialsARN")] pub credentials_arn: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -54,7 +54,7 @@ pub struct ApiSpec { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ApiSpecCorsConfiguration { +pub struct ApiCorsConfiguration { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowCredentials")] pub allow_credentials: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowHeaders")] @@ -119,7 +119,7 @@ use self::prelude::*; #[derive(CustomResource, Serialize, Deserialize, Clone, Debug)] #[kube(group = "argoproj.io", version = "v1alpha1", kind = "ArgoCDExport", plural = "argocdexports")] #[kube(namespaced)] -#[kube(status = "ArgoCDExportStatus")] +#[kube(status = "ArgoCdExportStatus")] #[kube(schema = "disabled")] pub struct ArgoCdExportSpec { pub argocd: String, @@ -128,33 +128,33 @@ pub struct ArgoCdExportSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub schedule: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub storage: Option, + pub storage: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStorage { +pub struct ArgoCdExportStorage { #[serde(default, skip_serializing_if = "Option::is_none")] pub backend: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub pvc: Option, + pub pvc: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvc { +pub struct ArgoCdExportStoragePvc { #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")] - pub data_source: Option, + pub data_source: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")] - pub data_source_ref: Option, + pub data_source_ref: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")] pub storage_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")] @@ -166,7 +166,7 @@ pub struct ArgoCdExportSpecStoragePvc { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcDataSource { +pub struct ArgoCdExportStoragePvcDataSource { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -174,7 +174,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSource { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcDataSourceRef { +pub struct ArgoCdExportStoragePvcDataSourceRef { #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")] pub api_group: Option, pub kind: String, @@ -184,7 +184,7 @@ pub struct ArgoCdExportSpecStoragePvcDataSourceRef { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcResources { +pub struct ArgoCdExportStoragePvcResources { #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -192,15 +192,15 @@ pub struct ArgoCdExportSpecStoragePvcResources { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcSelector { +pub struct ArgoCdExportStoragePvcSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct ArgoCdExportSpecStoragePvcSelectorMatchExpressions { +pub struct ArgoCdExportStoragePvcSelectorMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -324,13 +324,13 @@ use self::prelude::*; #[kube(schema = "disabled")] pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "additionalVolumes")] - pub additional_volumes: Option>, + pub additional_volumes: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSourceRanges")] pub allowed_source_ranges: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub clone: Option, + pub clone: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectionPooler")] - pub connection_pooler: Option, + pub connection_pooler: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] @@ -366,26 +366,26 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "masterServiceAnnotations")] pub master_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")] - pub node_affinity: Option, + pub node_affinity: Option, #[serde(rename = "numberOfInstances")] pub number_of_instances: i64, #[serde(default, skip_serializing_if = "Option::is_none")] - pub patroni: Option, + pub patroni: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAnnotations")] pub pod_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "podPriorityClassName")] pub pod_priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod_priority_class_name")] pub pod_priority_class_name_x: Option, - pub postgresql: PostgresqlSpecPostgresql, + pub postgresql: PostgresqlPostgresql, #[serde(default, skip_serializing_if = "Option::is_none", rename = "preparedDatabases")] - pub prepared_databases: Option>, + pub prepared_databases: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaLoadBalancer")] pub replica_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "replicaServiceAnnotations")] pub replica_service_annotations: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAnnotations")] @@ -399,15 +399,15 @@ pub struct PostgresqlSpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "spiloRunAsUser")] pub spilo_run_as_user: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub standby: Option, + pub standby: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub streams: Option>, + pub streams: Option>, #[serde(rename = "teamId")] pub team_id: String, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tls: Option, + pub tls: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub tolerations: Option>, + pub tolerations: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "useLoadBalancer")] pub use_load_balancer: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -418,11 +418,11 @@ pub struct PostgresqlSpec { pub users_with_in_place_secret_rotation: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersWithSecretRotation")] pub users_with_secret_rotation: Option>, - pub volume: PostgresqlSpecVolume, + pub volume: PostgresqlVolume, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecAdditionalVolumes { +pub struct PostgresqlAdditionalVolumes { #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(rename = "mountPath")] @@ -437,7 +437,7 @@ pub struct PostgresqlSpecAdditionalVolumes { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecClone { +pub struct PostgresqlClone { pub cluster: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub s3_access_key_id: Option, @@ -456,17 +456,17 @@ pub struct PostgresqlSpecClone { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPooler { +pub struct PostgresqlConnectionPooler { #[serde(default, skip_serializing_if = "Option::is_none", rename = "dockerImage")] pub docker_image: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxDBConnections")] pub max_db_connections: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "numberOfInstances")] pub number_of_instances: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option, + pub resources: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub schema: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -474,7 +474,7 @@ pub struct PostgresqlSpecConnectionPooler { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecConnectionPoolerMode { +pub enum PostgresqlConnectionPoolerMode { #[serde(rename = "session")] Session, #[serde(rename = "transaction")] @@ -482,15 +482,15 @@ pub enum PostgresqlSpecConnectionPoolerMode { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResources { +pub struct PostgresqlConnectionPoolerResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResourcesLimits { +pub struct PostgresqlConnectionPoolerResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -498,7 +498,7 @@ pub struct PostgresqlSpecConnectionPoolerResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecConnectionPoolerResourcesRequests { +pub struct PostgresqlConnectionPoolerResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -506,29 +506,29 @@ pub struct PostgresqlSpecConnectionPoolerResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinity { +pub struct PostgresqlNodeAffinity { #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] - pub preferred_during_scheduling_ignored_during_execution: Option>, + pub preferred_during_scheduling_ignored_during_execution: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] - pub required_during_scheduling_ignored_during_execution: Option, + pub required_during_scheduling_ignored_during_execution: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { - pub preference: PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { + pub preference: PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference, pub weight: i32, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -536,7 +536,7 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { +pub struct PostgresqlNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -544,21 +544,21 @@ pub struct PostgresqlSpecNodeAffinityPreferredDuringSchedulingIgnoredDuringExecu } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { #[serde(rename = "nodeSelectorTerms")] - pub node_selector_terms: Vec, + pub node_selector_terms: Vec, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")] - pub match_fields: Option>, + pub match_fields: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -566,7 +566,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { +pub struct PostgresqlNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { pub key: String, pub operator: String, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -574,7 +574,7 @@ pub struct PostgresqlSpecNodeAffinityRequiredDuringSchedulingIgnoredDuringExecut } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPatroni { +pub struct PostgresqlPatroni { #[serde(default, skip_serializing_if = "Option::is_none")] pub failsafe_mode: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -600,14 +600,14 @@ pub struct PostgresqlSpecPatroni { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPostgresql { +pub struct PostgresqlPostgresql { #[serde(default, skip_serializing_if = "Option::is_none")] pub parameters: Option>, - pub version: PostgresqlSpecPostgresqlVersion, + pub version: PostgresqlPostgresqlVersion, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecPostgresqlVersion { +pub enum PostgresqlPostgresqlVersion { #[serde(rename = "13")] r#_13, #[serde(rename = "14")] @@ -621,19 +621,19 @@ pub enum PostgresqlSpecPostgresqlVersion { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPreparedDatabases { +pub struct PostgresqlPreparedDatabases { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] pub default_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub extensions: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] - pub schemas: Option>, + pub schemas: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] pub secret_namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecPreparedDatabasesSchemas { +pub struct PostgresqlPreparedDatabasesSchemas { #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultRoles")] pub default_roles: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultUsers")] @@ -641,15 +641,15 @@ pub struct PostgresqlSpecPreparedDatabasesSchemas { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResources { +pub struct PostgresqlResources { #[serde(default, skip_serializing_if = "Option::is_none")] - pub limits: Option, + pub limits: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub requests: Option, + pub requests: Option, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResourcesLimits { +pub struct PostgresqlResourcesLimits { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -661,7 +661,7 @@ pub struct PostgresqlSpecResourcesLimits { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecResourcesRequests { +pub struct PostgresqlResourcesRequests { #[serde(default, skip_serializing_if = "Option::is_none")] pub cpu: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hugepages-1Gi")] @@ -673,7 +673,7 @@ pub struct PostgresqlSpecResourcesRequests { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStandby { +pub struct PostgresqlStandby { #[serde(default, skip_serializing_if = "Option::is_none")] pub gs_wal_path: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -685,7 +685,7 @@ pub struct PostgresqlSpecStandby { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStreams { +pub struct PostgresqlStreams { #[serde(rename = "applicationId")] pub application_id: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "batchSize")] @@ -699,11 +699,11 @@ pub struct PostgresqlSpecStreams { pub filter: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub memory: Option, - pub tables: BTreeMap, + pub tables: BTreeMap, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecStreamsTables { +pub struct PostgresqlStreamsTables { #[serde(default, skip_serializing_if = "Option::is_none", rename = "eventType")] pub event_type: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "idColumn")] @@ -717,7 +717,7 @@ pub struct PostgresqlSpecStreamsTables { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecTls { +pub struct PostgresqlTls { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caFile")] pub ca_file: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "caSecretName")] @@ -731,13 +731,13 @@ pub struct PostgresqlSpecTls { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecTolerations { +pub struct PostgresqlTolerations { #[serde(default, skip_serializing_if = "Option::is_none")] - pub effect: Option, + pub effect: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub operator: Option, + pub operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -745,26 +745,26 @@ pub struct PostgresqlSpecTolerations { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsEffect { +pub enum PostgresqlTolerationsEffect { NoExecute, NoSchedule, PreferNoSchedule, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecTolerationsOperator { +pub enum PostgresqlTolerationsOperator { Equal, Exists, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolume { +pub struct PostgresqlVolume { #[serde(default, skip_serializing_if = "Option::is_none")] pub iops: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isSubPathExpr")] pub is_sub_path_expr: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub selector: Option, + pub selector: Option, pub size: String, #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClass")] pub storage_class: Option, @@ -775,23 +775,23 @@ pub struct PostgresqlSpecVolume { } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolumeSelector { +pub struct PostgresqlVolumeSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] - pub match_expressions: Option>, + pub match_expressions: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub struct PostgresqlSpecVolumeSelectorMatchExpressions { +pub struct PostgresqlVolumeSelectorMatchExpressions { pub key: String, - pub operator: PostgresqlSpecVolumeSelectorMatchExpressionsOperator, + pub operator: PostgresqlVolumeSelectorMatchExpressionsOperator, #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } #[derive(Serialize, Deserialize, Clone, Debug)] -pub enum PostgresqlSpecVolumeSelectorMatchExpressionsOperator { +pub enum PostgresqlVolumeSelectorMatchExpressionsOperator { DoesNotExist, Exists, In,