cluster_api_rs/api/
capi_clusterresourcesetbinding.rs1#[allow(unused_imports)]
6mod prelude {
7 pub use kube::CustomResource;
8 pub use schemars::JsonSchema;
9 pub use serde::{Deserialize, Serialize};
10}
11use self::prelude::*;
12
13#[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq, JsonSchema)]
15#[kube(
16 group = "addons.cluster.x-k8s.io",
17 version = "v1beta1",
18 kind = "ClusterResourceSetBinding",
19 plural = "clusterresourcesetbindings"
20)]
21#[kube(namespaced)]
22#[kube(derive = "Default")]
23#[kube(derive = "PartialEq")]
24pub struct ClusterResourceSetBindingSpec {
25 #[serde(default, skip_serializing_if = "Option::is_none")]
27 pub bindings: Option<Vec<ClusterResourceSetBindingBindings>>,
28 #[serde(
31 default,
32 skip_serializing_if = "Option::is_none",
33 rename = "clusterName"
34 )]
35 pub cluster_name: Option<String>,
36}
37
38#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq, JsonSchema)]
40pub struct ClusterResourceSetBindingBindings {
41 #[serde(rename = "clusterResourceSetName")]
43 pub cluster_resource_set_name: String,
44 #[serde(default, skip_serializing_if = "Option::is_none")]
46 pub resources: Option<Vec<ClusterResourceSetBindingBindingsResources>>,
47}
48
49#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
51pub struct ClusterResourceSetBindingBindingsResources {
52 pub applied: bool,
54 #[serde(default, skip_serializing_if = "Option::is_none")]
57 pub hash: Option<String>,
58 pub kind: ClusterResourceSetBindingBindingsResourcesKind,
60 #[serde(
62 default,
63 skip_serializing_if = "Option::is_none",
64 rename = "lastAppliedTime"
65 )]
66 pub last_applied_time: Option<String>,
67 pub name: String,
69}
70
71#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
73pub enum ClusterResourceSetBindingBindingsResourcesKind {
74 Secret,
75 ConfigMap,
76}