#[allow(unused_imports)]
mod prelude {
pub use kube::CustomResource;
pub use serde::{Serialize, Deserialize};
pub use std::collections::BTreeMap;
pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString;
}
use self::prelude::*;
#[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
#[kube(group = "csi.ceph.io", version = "v1alpha1", kind = "OperatorConfig", plural = "operatorconfigs")]
#[kube(namespaced)]
#[kube(schema = "disabled")]
#[kube(derive="Default")]
#[kube(derive="PartialEq")]
pub struct OperatorConfigSpec {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "driverSpecDefaults")]
pub driver_spec_defaults: Option<OperatorConfigDriverSpecDefaults>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub log: Option<OperatorConfigLog>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaults {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "attachRequired")]
pub attach_required: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cephFsClientType")]
pub ceph_fs_client_type: Option<OperatorConfigDriverSpecDefaultsCephFsClientType>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterName")]
pub cluster_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "controllerPlugin")]
pub controller_plugin: Option<OperatorConfigDriverSpecDefaultsControllerPlugin>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "deployCsiAddons")]
pub deploy_csi_addons: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "enableMetadata")]
pub enable_metadata: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub encryption: Option<OperatorConfigDriverSpecDefaultsEncryption>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupPolicy")]
pub fs_group_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fuseMountOptions")]
pub fuse_mount_options: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "generateOMapInfo")]
pub generate_o_map_info: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "grpcTimeout")]
pub grpc_timeout: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "imageSet")]
pub image_set: Option<OperatorConfigDriverSpecDefaultsImageSet>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "kernelMountOptions")]
pub kernel_mount_options: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "leaderElection")]
pub leader_election: Option<OperatorConfigDriverSpecDefaultsLeaderElection>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub liveness: Option<OperatorConfigDriverSpecDefaultsLiveness>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub log: Option<OperatorConfigDriverSpecDefaultsLog>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodePlugin")]
pub node_plugin: Option<OperatorConfigDriverSpecDefaultsNodePlugin>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "snapshotPolicy")]
pub snapshot_policy: Option<OperatorConfigDriverSpecDefaultsSnapshotPolicy>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum OperatorConfigDriverSpecDefaultsCephFsClientType {
#[serde(rename = "autodetect")]
Autodetect,
#[serde(rename = "kernel")]
Kernel,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPlugin {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub affinity: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub annotations: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "deploymentStrategy")]
pub deployment_strategy: Option<OperatorConfigDriverSpecDefaultsControllerPluginDeploymentStrategy>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostNetwork")]
pub host_network: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")]
pub image_pull_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub labels: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")]
pub priority_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub privileged: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub replicas: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<OperatorConfigDriverSpecDefaultsControllerPluginResources>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountName")]
pub service_account_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tolerations: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginTolerations>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")]
pub node_affinity: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAffinity")]
pub pod_affinity: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAntiAffinity")]
pub pod_anti_affinity: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinity>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution {
pub preference: OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "nodeSelectorTerms")]
pub node_selector_terms: Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginDeploymentStrategy {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "rollingUpdate")]
pub rolling_update: Option<OperatorConfigDriverSpecDefaultsControllerPluginDeploymentStrategyRollingUpdate>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginDeploymentStrategyRollingUpdate {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxSurge")]
pub max_surge: Option<IntOrString>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxUnavailable")]
pub max_unavailable: Option<IntOrString>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub addons: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesAddons>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub attacher: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesAttacher>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub liveness: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesLiveness>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "logRotator")]
pub log_rotator: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesLogRotator>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "omapGenerator")]
pub omap_generator: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesOmapGenerator>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub plugin: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesPlugin>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub provisioner: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesProvisioner>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resizer: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesResizer>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub snapshotter: Option<OperatorConfigDriverSpecDefaultsControllerPluginResourcesSnapshotter>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesAddons {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesAddonsClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesAddonsClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesAttacher {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesAttacherClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesAttacherClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesLiveness {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesLivenessClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesLivenessClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesLogRotator {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesLogRotatorClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesLogRotatorClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesOmapGenerator {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesOmapGeneratorClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesOmapGeneratorClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesPlugin {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesPluginClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesPluginClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesProvisioner {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesProvisionerClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesProvisionerClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesResizer {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesResizerClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesResizerClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesSnapshotter {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginResourcesSnapshotterClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginResourcesSnapshotterClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginTolerations {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub effect: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub key: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub operator: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")]
pub toleration_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumes {
pub mount: OperatorConfigDriverSpecDefaultsControllerPluginVolumesMount,
pub volume: OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolume,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesMount {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "recursiveReadOnly")]
pub recursive_read_only: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "awsElasticBlockStore")]
pub aws_elastic_block_store: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAwsElasticBlockStore>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "azureDisk")]
pub azure_disk: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAzureDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "azureFile")]
pub azure_file: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAzureFile>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cephfs: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCephfs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cinder: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCinder>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeConfigMap>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub csi: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCsi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "downwardAPI")]
pub downward_api: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")]
pub empty_dir: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEmptyDir>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub ephemeral: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeral>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub fc: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFc>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "flexVolume")]
pub flex_volume: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlexVolume>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub flocker: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlocker>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gcePersistentDisk")]
pub gce_persistent_disk: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGcePersistentDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gitRepo")]
pub git_repo: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGitRepo>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub glusterfs: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGlusterfs>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPath")]
pub host_path: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeHostPath>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub image: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeImage>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub iscsi: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeIscsi>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub nfs: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeNfs>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "photonPersistentDisk")]
pub photon_persistent_disk: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePhotonPersistentDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "portworxVolume")]
pub portworx_volume: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePortworxVolume>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub projected: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjected>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub quobyte: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeQuobyte>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rbd: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeRbd>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "scaleIO")]
pub scale_io: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeScaleIo>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeSecret>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub storageos: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeStorageos>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "vsphereVolume")]
pub vsphere_volume: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeVsphereVolume>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAwsElasticBlockStore {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub partition: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAzureDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cachingMode")]
pub caching_mode: Option<String>,
#[serde(rename = "diskName")]
pub disk_name: String,
#[serde(rename = "diskURI")]
pub disk_uri: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeAzureFile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "secretName")]
pub secret_name: String,
#[serde(rename = "shareName")]
pub share_name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCephfs {
pub monitors: Vec<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretFile")]
pub secret_file: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCephfsSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCephfsSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCinder {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCinderSecretRef>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCinderSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCsi {
pub driver: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodePublishSecretRef")]
pub node_publish_secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCsiNodePublishSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributes")]
pub volume_attributes: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeCsiNodePublishSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApi {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItems>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItems {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")]
pub field_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItemsFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")]
pub resource_field_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItemsResourceFieldRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItemsFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")]
pub api_version: Option<String>,
#[serde(rename = "fieldPath")]
pub field_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeDownwardApiItemsResourceFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "containerName")]
pub container_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub divisor: Option<IntOrString>,
pub resource: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEmptyDir {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub medium: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")]
pub size_limit: Option<IntOrString>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeral {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeClaimTemplate")]
pub volume_claim_template: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplate>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplate {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub metadata: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateMetadata>,
pub spec: OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpec,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateMetadata {
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpec {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")]
pub access_modes: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")]
pub data_source: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSource>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")]
pub data_source_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSourceRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecResources>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")]
pub storage_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")]
pub volume_attributes_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMode")]
pub volume_mode: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSource {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")]
pub api_group: Option<String>,
pub kind: String,
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSourceRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")]
pub api_group: Option<String>,
pub kind: String,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespace: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFc {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub lun: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "targetWWNs")]
pub target_ww_ns: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub wwids: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlexVolume {
pub driver: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub options: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlexVolumeSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlexVolumeSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeFlocker {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "datasetName")]
pub dataset_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "datasetUUID")]
pub dataset_uuid: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGcePersistentDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub partition: Option<i32>,
#[serde(rename = "pdName")]
pub pd_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGitRepo {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub directory: Option<String>,
pub repository: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub revision: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeGlusterfs {
pub endpoints: String,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeHostPath {
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeImage {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "pullPolicy")]
pub pull_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub reference: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeIscsi {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "chapAuthDiscovery")]
pub chap_auth_discovery: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "chapAuthSession")]
pub chap_auth_session: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initiatorName")]
pub initiator_name: Option<String>,
pub iqn: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "iscsiInterface")]
pub iscsi_interface: Option<String>,
pub lun: i32,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub portals: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeIscsiSecretRef>,
#[serde(rename = "targetPortal")]
pub target_portal: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeIscsiSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeNfs {
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
pub server: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePhotonPersistentDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(rename = "pdID")]
pub pd_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumePortworxVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjected {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sources: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSources>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSources {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterTrustBundle")]
pub cluster_trust_bundle: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundle>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesConfigMap>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "downwardAPI")]
pub downward_api: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podCertificate")]
pub pod_certificate: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesPodCertificate>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesSecret>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountToken")]
pub service_account_token: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesServiceAccountToken>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundle {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "signerName")]
pub signer_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApi {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItems>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItems {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")]
pub field_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItemsFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")]
pub resource_field_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItemsResourceFieldRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItemsFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")]
pub api_version: Option<String>,
#[serde(rename = "fieldPath")]
pub field_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesDownwardApiItemsResourceFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "containerName")]
pub container_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub divisor: Option<IntOrString>,
pub resource: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesPodCertificate {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certificateChainPath")]
pub certificate_chain_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialBundlePath")]
pub credential_bundle_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keyPath")]
pub key_path: Option<String>,
#[serde(rename = "keyType")]
pub key_type: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxExpirationSeconds")]
pub max_expiration_seconds: Option<i32>,
#[serde(rename = "signerName")]
pub signer_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userAnnotations")]
pub user_annotations: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesSecret {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeProjectedSourcesServiceAccountToken {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub audience: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "expirationSeconds")]
pub expiration_seconds: Option<i64>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeQuobyte {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub group: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
pub registry: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tenant: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
pub volume: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeRbd {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
pub image: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub keyring: Option<String>,
pub monitors: Vec<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pool: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeRbdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeRbdSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeScaleIo {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
pub gateway: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "protectionDomain")]
pub protection_domain: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "secretRef")]
pub secret_ref: OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeScaleIoSecretRef,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "sslEnabled")]
pub ssl_enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storageMode")]
pub storage_mode: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePool")]
pub storage_pool: Option<String>,
pub system: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeScaleIoSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeStorageos {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeStorageosSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeNamespace")]
pub volume_namespace: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeStorageosSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsControllerPluginVolumesVolumeVsphereVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePolicyID")]
pub storage_policy_id: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePolicyName")]
pub storage_policy_name: Option<String>,
#[serde(rename = "volumePath")]
pub volume_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsEncryption {
#[serde(rename = "configMapName")]
pub config_map_name: OperatorConfigDriverSpecDefaultsEncryptionConfigMapName,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsEncryptionConfigMapName {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsImageSet {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsLeaderElection {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "leaseDuration")]
pub lease_duration: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "renewDeadline")]
pub renew_deadline: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "retryPeriod")]
pub retry_period: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsLiveness {
#[serde(rename = "metricsPort")]
pub metrics_port: i64,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsLog {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rotation: Option<OperatorConfigDriverSpecDefaultsLogRotation>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub verbosity: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsLogRotation {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "logHostPath")]
pub log_host_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxFiles")]
pub max_files: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxLogSize")]
pub max_log_size: Option<IntOrString>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub periodicity: Option<OperatorConfigDriverSpecDefaultsLogRotationPeriodicity>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum OperatorConfigDriverSpecDefaultsLogRotationPeriodicity {
#[serde(rename = "hourly")]
Hourly,
#[serde(rename = "daily")]
Daily,
#[serde(rename = "weekly")]
Weekly,
#[serde(rename = "monthly")]
Monthly,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePlugin {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub affinity: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub annotations: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "enableSeLinuxHostMount")]
pub enable_se_linux_host_mount: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")]
pub image_pull_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "kubeletDirPath")]
pub kubelet_dir_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub labels: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")]
pub priority_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<OperatorConfigDriverSpecDefaultsNodePluginResources>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountName")]
pub service_account_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tolerations: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginTolerations>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub topology: Option<OperatorConfigDriverSpecDefaultsNodePluginTopology>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "updateStrategy")]
pub update_strategy: Option<OperatorConfigDriverSpecDefaultsNodePluginUpdateStrategy>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")]
pub node_affinity: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAffinity")]
pub pod_affinity: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAntiAffinity")]
pub pod_anti_affinity: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinity>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution {
pub preference: OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "nodeSelectorTerms")]
pub node_selector_terms: Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")]
pub match_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")]
pub mismatch_label_keys: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespaces: Option<Vec<String>>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub addons: Option<OperatorConfigDriverSpecDefaultsNodePluginResourcesAddons>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub liveness: Option<OperatorConfigDriverSpecDefaultsNodePluginResourcesLiveness>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "logRotator")]
pub log_rotator: Option<OperatorConfigDriverSpecDefaultsNodePluginResourcesLogRotator>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub plugin: Option<OperatorConfigDriverSpecDefaultsNodePluginResourcesPlugin>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub registrar: Option<OperatorConfigDriverSpecDefaultsNodePluginResourcesRegistrar>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesAddons {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginResourcesAddonsClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesAddonsClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesLiveness {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginResourcesLivenessClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesLivenessClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesLogRotator {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginResourcesLogRotatorClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesLogRotatorClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesPlugin {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginResourcesPluginClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesPluginClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesRegistrar {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginResourcesRegistrarClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginResourcesRegistrarClaims {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub request: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginTolerations {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub effect: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub key: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub operator: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")]
pub toleration_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginTopology {
#[serde(rename = "domainLabels")]
pub domain_labels: Vec<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginUpdateStrategy {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "rollingUpdate")]
pub rolling_update: Option<OperatorConfigDriverSpecDefaultsNodePluginUpdateStrategyRollingUpdate>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginUpdateStrategyRollingUpdate {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxSurge")]
pub max_surge: Option<IntOrString>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxUnavailable")]
pub max_unavailable: Option<IntOrString>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumes {
pub mount: OperatorConfigDriverSpecDefaultsNodePluginVolumesMount,
pub volume: OperatorConfigDriverSpecDefaultsNodePluginVolumesVolume,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesMount {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "recursiveReadOnly")]
pub recursive_read_only: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "awsElasticBlockStore")]
pub aws_elastic_block_store: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAwsElasticBlockStore>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "azureDisk")]
pub azure_disk: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAzureDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "azureFile")]
pub azure_file: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAzureFile>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cephfs: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCephfs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cinder: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCinder>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeConfigMap>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub csi: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCsi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "downwardAPI")]
pub downward_api: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")]
pub empty_dir: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEmptyDir>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub ephemeral: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeral>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub fc: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFc>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "flexVolume")]
pub flex_volume: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlexVolume>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub flocker: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlocker>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gcePersistentDisk")]
pub gce_persistent_disk: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGcePersistentDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gitRepo")]
pub git_repo: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGitRepo>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub glusterfs: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGlusterfs>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPath")]
pub host_path: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeHostPath>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub image: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeImage>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub iscsi: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeIscsi>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub nfs: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeNfs>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "photonPersistentDisk")]
pub photon_persistent_disk: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePhotonPersistentDisk>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "portworxVolume")]
pub portworx_volume: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePortworxVolume>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub projected: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjected>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub quobyte: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeQuobyte>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rbd: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeRbd>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "scaleIO")]
pub scale_io: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeScaleIo>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeSecret>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub storageos: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeStorageos>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "vsphereVolume")]
pub vsphere_volume: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeVsphereVolume>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAwsElasticBlockStore {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub partition: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAzureDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cachingMode")]
pub caching_mode: Option<String>,
#[serde(rename = "diskName")]
pub disk_name: String,
#[serde(rename = "diskURI")]
pub disk_uri: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeAzureFile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "secretName")]
pub secret_name: String,
#[serde(rename = "shareName")]
pub share_name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCephfs {
pub monitors: Vec<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretFile")]
pub secret_file: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCephfsSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCephfsSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCinder {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCinderSecretRef>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCinderSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCsi {
pub driver: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodePublishSecretRef")]
pub node_publish_secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCsiNodePublishSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributes")]
pub volume_attributes: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeCsiNodePublishSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApi {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItems>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItems {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")]
pub field_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItemsFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")]
pub resource_field_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItemsResourceFieldRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItemsFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")]
pub api_version: Option<String>,
#[serde(rename = "fieldPath")]
pub field_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeDownwardApiItemsResourceFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "containerName")]
pub container_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub divisor: Option<IntOrString>,
pub resource: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEmptyDir {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub medium: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")]
pub size_limit: Option<IntOrString>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeral {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeClaimTemplate")]
pub volume_claim_template: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplate>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplate {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub metadata: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateMetadata>,
pub spec: OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpec,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateMetadata {
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpec {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")]
pub access_modes: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSource")]
pub data_source: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSource>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSourceRef")]
pub data_source_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSourceRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecResources>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub selector: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClassName")]
pub storage_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")]
pub volume_attributes_class_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMode")]
pub volume_mode: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSource {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")]
pub api_group: Option<String>,
pub kind: String,
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecDataSourceRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiGroup")]
pub api_group: Option<String>,
pub kind: String,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespace: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeEphemeralVolumeClaimTemplateSpecSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFc {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub lun: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "targetWWNs")]
pub target_ww_ns: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub wwids: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlexVolume {
pub driver: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub options: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlexVolumeSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlexVolumeSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeFlocker {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "datasetName")]
pub dataset_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "datasetUUID")]
pub dataset_uuid: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGcePersistentDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub partition: Option<i32>,
#[serde(rename = "pdName")]
pub pd_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGitRepo {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub directory: Option<String>,
pub repository: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub revision: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeGlusterfs {
pub endpoints: String,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeHostPath {
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeImage {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "pullPolicy")]
pub pull_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub reference: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeIscsi {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "chapAuthDiscovery")]
pub chap_auth_discovery: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "chapAuthSession")]
pub chap_auth_session: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initiatorName")]
pub initiator_name: Option<String>,
pub iqn: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "iscsiInterface")]
pub iscsi_interface: Option<String>,
pub lun: i32,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub portals: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeIscsiSecretRef>,
#[serde(rename = "targetPortal")]
pub target_portal: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeIscsiSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeNfs {
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
pub server: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePhotonPersistentDisk {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(rename = "pdID")]
pub pd_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumePortworxVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "volumeID")]
pub volume_id: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjected {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sources: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSources>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSources {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterTrustBundle")]
pub cluster_trust_bundle: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundle>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesConfigMap>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "downwardAPI")]
pub downward_api: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApi>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podCertificate")]
pub pod_certificate: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesPodCertificate>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesSecret>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountToken")]
pub service_account_token: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesServiceAccountToken>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundle {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "signerName")]
pub signer_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelectorMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesClusterTrustBundleLabelSelectorMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApi {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItems>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItems {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")]
pub field_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItemsFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")]
pub resource_field_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItemsResourceFieldRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItemsFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")]
pub api_version: Option<String>,
#[serde(rename = "fieldPath")]
pub field_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesDownwardApiItemsResourceFieldRef {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "containerName")]
pub container_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub divisor: Option<IntOrString>,
pub resource: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesPodCertificate {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certificateChainPath")]
pub certificate_chain_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialBundlePath")]
pub credential_bundle_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keyPath")]
pub key_path: Option<String>,
#[serde(rename = "keyType")]
pub key_type: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxExpirationSeconds")]
pub max_expiration_seconds: Option<i32>,
#[serde(rename = "signerName")]
pub signer_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userAnnotations")]
pub user_annotations: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesSecret {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeProjectedSourcesServiceAccountToken {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub audience: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "expirationSeconds")]
pub expiration_seconds: Option<i64>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeQuobyte {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub group: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
pub registry: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tenant: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
pub volume: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeRbd {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
pub image: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub keyring: Option<String>,
pub monitors: Vec<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pool: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeRbdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeRbdSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeScaleIo {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
pub gateway: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "protectionDomain")]
pub protection_domain: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(rename = "secretRef")]
pub secret_ref: OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeScaleIoSecretRef,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "sslEnabled")]
pub ssl_enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storageMode")]
pub storage_mode: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePool")]
pub storage_pool: Option<String>,
pub system: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeScaleIoSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeStorageos {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeStorageosSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")]
pub volume_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeNamespace")]
pub volume_namespace: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeStorageosSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigDriverSpecDefaultsNodePluginVolumesVolumeVsphereVolume {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")]
pub fs_type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePolicyID")]
pub storage_policy_id: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "storagePolicyName")]
pub storage_policy_name: Option<String>,
#[serde(rename = "volumePath")]
pub volume_path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum OperatorConfigDriverSpecDefaultsSnapshotPolicy {
#[serde(rename = "none")]
None,
#[serde(rename = "volumeGroupSnapshot")]
VolumeGroupSnapshot,
#[serde(rename = "volumeSnapshot")]
VolumeSnapshot,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigLog {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub verbosity: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct OperatorConfigStatus {
}