#[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 = "infinispan.org", version = "v1", kind = "Infinispan", plural = "infinispans")]
#[kube(namespaced)]
#[kube(status = "InfinispanStatus")]
#[kube(schema = "disabled")]
#[kube(derive="Default")]
#[kube(derive="PartialEq")]
pub struct InfinispanSpec {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub affinity: Option<InfinispanAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub autoscale: Option<InfinispanAutoscale>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudEvents")]
pub cloud_events: Option<InfinispanCloudEvents>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configListener")]
pub config_listener: Option<InfinispanConfigListener>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapName")]
pub config_map_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<InfinispanContainer>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub dependencies: Option<InfinispanDependencies>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub expose: Option<InfinispanExpose>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub jmx: Option<InfinispanJmx>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub logging: Option<InfinispanLogging>,
pub replicas: i32,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub scheduling: Option<InfinispanScheduling>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub security: Option<InfinispanSecurity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub service: Option<InfinispanService>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub upgrades: Option<InfinispanUpgrades>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")]
pub node_affinity: Option<InfinispanAffinityNodeAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAffinity")]
pub pod_affinity: Option<InfinispanAffinityPodAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAntiAffinity")]
pub pod_anti_affinity: Option<InfinispanAffinityPodAntiAffinity>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution {
pub preference: InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions {
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 InfinispanAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields {
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 InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "nodeSelectorTerms")]
pub node_selector_terms: Vec<InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions {
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 InfinispanAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields {
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 InfinispanAffinityPodAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[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 InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
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 InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
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 InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[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 InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
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 InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
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 InfinispanAffinityPodAntiAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[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 InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
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 InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
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 InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[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 InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
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 InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[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 InfinispanAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
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 InfinispanAutoscale {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub disabled: Option<bool>,
#[serde(rename = "maxMemUsagePercent")]
pub max_mem_usage_percent: i64,
#[serde(rename = "maxReplicas")]
pub max_replicas: i32,
#[serde(rename = "minMemUsagePercent")]
pub min_mem_usage_percent: i64,
#[serde(rename = "minReplicas")]
pub min_replicas: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanCloudEvents {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub acks: Option<String>,
#[serde(rename = "bootstrapServers")]
pub bootstrap_servers: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheEntriesTopic")]
pub cache_entries_topic: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanConfigListener {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cpu: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub logging: Option<InfinispanConfigListenerLogging>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub memory: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanConfigListenerLogging {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<InfinispanConfigListenerLoggingLevel>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanConfigListenerLoggingLevel {
#[serde(rename = "debug")]
Debug,
#[serde(rename = "info")]
Info,
#[serde(rename = "error")]
Error,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanContainer {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "cliExtraJvmOpts")]
pub cli_extra_jvm_opts: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cpu: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub env: Option<Vec<InfinispanContainerEnv>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "extraJvmOpts")]
pub extra_jvm_opts: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub memory: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "routerExtraJvmOpts")]
pub router_extra_jvm_opts: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanContainerEnv {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")]
pub value_from: Option<InfinispanContainerEnvValueFrom>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanContainerEnvValueFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")]
pub config_map_key_ref: Option<InfinispanContainerEnvValueFromConfigMapKeyRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")]
pub field_ref: Option<InfinispanContainerEnvValueFromFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")]
pub resource_field_ref: Option<InfinispanContainerEnvValueFromResourceFieldRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")]
pub secret_key_ref: Option<InfinispanContainerEnvValueFromSecretKeyRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanContainerEnvValueFromConfigMapKeyRef {
pub key: String,
#[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 InfinispanContainerEnvValueFromFieldRef {
#[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 InfinispanContainerEnvValueFromResourceFieldRef {
#[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 InfinispanContainerEnvValueFromSecretKeyRef {
pub key: String,
#[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 InfinispanDependencies {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub artifacts: Option<Vec<InfinispanDependenciesArtifacts>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainer")]
pub init_container: Option<InfinispanDependenciesInitContainer>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeClaimName")]
pub volume_claim_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanDependenciesArtifacts {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub hash: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub maven: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<InfinispanDependenciesArtifactsType>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanDependenciesArtifactsType {
#[serde(rename = "file")]
File,
#[serde(rename = "zip")]
Zip,
#[serde(rename = "tgz")]
Tgz,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanDependenciesInitContainer {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cpu: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub memory: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct InfinispanExpose {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub annotations: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub host: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodePort")]
pub node_port: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub port: Option<i32>,
#[serde(rename = "type")]
pub r#type: InfinispanExposeType,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanExposeType {
NodePort,
LoadBalancer,
Route,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanJmx {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanLogging {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub categories: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pattern: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanScheduling {
#[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 affinity: Option<InfinispanSchedulingAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tolerations: Option<Vec<InfinispanSchedulingTolerations>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "topologySpreadConstraints")]
pub topology_spread_constraints: Option<Vec<InfinispanSchedulingTopologySpreadConstraints>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinity")]
pub node_affinity: Option<InfinispanSchedulingAffinityNodeAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAffinity")]
pub pod_affinity: Option<InfinispanSchedulingAffinityPodAffinity>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podAntiAffinity")]
pub pod_anti_affinity: Option<InfinispanSchedulingAffinityPodAntiAffinity>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution {
pub preference: InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions {
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 InfinispanSchedulingAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields {
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 InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "nodeSelectorTerms")]
pub node_selector_terms: Vec<InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchFields")]
pub match_fields: Option<Vec<InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions {
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 InfinispanSchedulingAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields {
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 InfinispanSchedulingAffinityPodAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[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 InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[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 InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAntiAffinity {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")]
pub preferred_during_scheduling_ignored_during_execution: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")]
pub required_during_scheduling_ignored_during_execution: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution {
#[serde(rename = "podAffinityTerm")]
pub pod_affinity_term: InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm,
pub weight: i32,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")]
pub namespace_selector: Option<InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
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 InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions>>,
#[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 InfinispanSchedulingAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
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 InfinispanSchedulingTolerations {
#[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 InfinispanSchedulingTopologySpreadConstraints {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")]
pub label_selector: Option<InfinispanSchedulingTopologySpreadConstraintsLabelSelector>,
#[serde(rename = "maxSkew")]
pub max_skew: i32,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")]
pub min_domains: Option<i32>,
#[serde(rename = "topologyKey")]
pub topology_key: String,
#[serde(rename = "whenUnsatisfiable")]
pub when_unsatisfiable: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSchedulingTopologySpreadConstraintsLabelSelector {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<InfinispanSchedulingTopologySpreadConstraintsLabelSelectorMatchExpressions>>,
#[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 InfinispanSchedulingTopologySpreadConstraintsLabelSelectorMatchExpressions {
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 InfinispanSecurity {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub authorization: Option<InfinispanSecurityAuthorization>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialStoreSecretName")]
pub credential_store_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointAuthentication")]
pub endpoint_authentication: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointEncryption")]
pub endpoint_encryption: Option<InfinispanSecurityEndpointEncryption>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSecretName")]
pub endpoint_secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSecurityAuthorization {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub roles: Option<Vec<InfinispanSecurityAuthorizationRoles>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSecurityAuthorizationRoles {
pub name: String,
pub permissions: Vec<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanSecurityEndpointEncryption {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretName")]
pub cert_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certServiceName")]
pub cert_service_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<InfinispanSecurityEndpointEncryptionClientCert>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCertSecretName")]
pub client_cert_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<InfinispanSecurityEndpointEncryptionType>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanSecurityEndpointEncryptionClientCert {
None,
Authenticate,
Validate,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanSecurityEndpointEncryptionType {
Service,
#[serde(rename = "service")]
ServiceX,
Secret,
#[serde(rename = "secret")]
SecretX,
None,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanService {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<InfinispanServiceContainer>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "replicationFactor")]
pub replication_factor: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sites: Option<InfinispanServiceSites>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<InfinispanServiceType>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceContainer {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "ephemeralStorage")]
pub ephemeral_storage: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")]
pub liveness_probe: Option<InfinispanServiceContainerLivenessProbe>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")]
pub readiness_probe: Option<InfinispanServiceContainerReadinessProbe>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")]
pub startup_probe: Option<InfinispanServiceContainerStartupProbe>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub storage: Option<String>,
#[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 = "terminationGracePeriodSeconds")]
pub termination_grace_period_seconds: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceContainerLivenessProbe {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")]
pub failure_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")]
pub initial_delay_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")]
pub period_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")]
pub success_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")]
pub timeout_seconds: Option<i32>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceContainerReadinessProbe {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")]
pub failure_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")]
pub initial_delay_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")]
pub period_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")]
pub success_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")]
pub timeout_seconds: Option<i32>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceContainerStartupProbe {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")]
pub failure_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")]
pub initial_delay_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")]
pub period_seconds: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")]
pub success_threshold: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")]
pub timeout_seconds: Option<i32>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct InfinispanServiceSites {
pub local: InfinispanServiceSitesLocal,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub locations: Option<Vec<InfinispanServiceSitesLocations>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct InfinispanServiceSitesLocal {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub discovery: Option<InfinispanServiceSitesLocalDiscovery>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub encryption: Option<InfinispanServiceSitesLocalEncryption>,
pub expose: InfinispanServiceSitesLocalExpose,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "maxRelayNodes")]
pub max_relay_nodes: Option<i32>,
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalDiscovery {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cpu: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub heartbeats: Option<InfinispanServiceSitesLocalDiscoveryHeartbeats>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "launchGossipRouter")]
pub launch_gossip_router: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub memory: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "suspectEvents")]
pub suspect_events: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<InfinispanServiceSitesLocalDiscoveryType>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalDiscoveryHeartbeats {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub interval: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub timeout: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanServiceSitesLocalDiscoveryType {
#[serde(rename = "gossiprouter")]
Gossiprouter,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalEncryption {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub protocol: Option<InfinispanServiceSitesLocalEncryptionProtocol>,
#[serde(rename = "routerKeyStore")]
pub router_key_store: InfinispanServiceSitesLocalEncryptionRouterKeyStore,
#[serde(rename = "transportKeyStore")]
pub transport_key_store: InfinispanServiceSitesLocalEncryptionTransportKeyStore,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "trustStore")]
pub trust_store: Option<InfinispanServiceSitesLocalEncryptionTrustStore>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanServiceSitesLocalEncryptionProtocol {
#[serde(rename = "TLSv1.2")]
TlSv12,
#[serde(rename = "TLSv1.3")]
TlSv13,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalEncryptionRouterKeyStore {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub alias: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub filename: Option<String>,
#[serde(rename = "secretName")]
pub secret_name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalEncryptionTransportKeyStore {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub alias: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub filename: Option<String>,
#[serde(rename = "secretName")]
pub secret_name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocalEncryptionTrustStore {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub filename: Option<String>,
#[serde(rename = "secretName")]
pub secret_name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct InfinispanServiceSitesLocalExpose {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub annotations: Option<BTreeMap<String, String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "nodePort")]
pub node_port: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub port: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "routeHostName")]
pub route_host_name: Option<String>,
#[serde(rename = "type")]
pub r#type: InfinispanServiceSitesLocalExposeType,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanServiceSitesLocalExposeType {
NodePort,
LoadBalancer,
#[serde(rename = "ClusterIP")]
ClusterIp,
Route,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanServiceSitesLocations {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterName")]
pub cluster_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub host: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub namespace: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub port: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanServiceType {
DataGrid,
Cache,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanUpgrades {
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatus {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub conditions: Option<Vec<InfinispanStatusConditions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "consoleUrl")]
pub console_url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hotRodRollingUpgradeStatus")]
pub hot_rod_rolling_upgrade_status: Option<InfinispanStatusHotRodRollingUpgradeStatus>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub operand: Option<InfinispanStatusOperand>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub operator: Option<InfinispanStatusOperator>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podStatus")]
pub pod_status: Option<InfinispanStatusPodStatus>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub replicas: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "replicasWantedAtRestart")]
pub replicas_wanted_at_restart: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub security: Option<InfinispanStatusSecurity>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub selector: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "statefulSetName")]
pub stateful_set_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusConditions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
pub status: String,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusHotRodRollingUpgradeStatus {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "SourceStatefulSetName")]
pub source_stateful_set_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "SourceVersion")]
pub source_version: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "TargetStatefulSetName")]
pub target_stateful_set_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub stage: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusOperand {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "customImage")]
pub custom_image: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub deprecated: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub phase: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusOperator {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pod: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusPodStatus {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub ready: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub starting: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub stopped: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusSecurity {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub authorization: Option<InfinispanStatusSecurityAuthorization>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "credentialStoreSecretName")]
pub credential_store_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointAuthentication")]
pub endpoint_authentication: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointEncryption")]
pub endpoint_encryption: Option<InfinispanStatusSecurityEndpointEncryption>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSecretName")]
pub endpoint_secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusSecurityAuthorization {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub roles: Option<Vec<InfinispanStatusSecurityAuthorizationRoles>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusSecurityAuthorizationRoles {
pub name: String,
pub permissions: Vec<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct InfinispanStatusSecurityEndpointEncryption {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretName")]
pub cert_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "certServiceName")]
pub cert_service_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<InfinispanStatusSecurityEndpointEncryptionClientCert>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCertSecretName")]
pub client_cert_secret_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<InfinispanStatusSecurityEndpointEncryptionType>,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanStatusSecurityEndpointEncryptionClientCert {
None,
Authenticate,
Validate,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
pub enum InfinispanStatusSecurityEndpointEncryptionType {
Service,
#[serde(rename = "service")]
ServiceX,
Secret,
#[serde(rename = "secret")]
SecretX,
None,
}