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, 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 = "PartialEq")]
23pub struct ClusterResourceSetBindingSpec {
24 #[serde(default, skip_serializing_if = "Option::is_none")]
26 pub bindings: Option<Vec<ClusterResourceSetBindingBindings>>,
27 #[serde(
30 default,
31 skip_serializing_if = "Option::is_none",
32 rename = "clusterName"
33 )]
34 pub cluster_name: Option<String>,
35}
36
37#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
39pub struct ClusterResourceSetBindingBindings {
40 #[serde(rename = "clusterResourceSetName")]
42 pub cluster_resource_set_name: String,
43 #[serde(default, skip_serializing_if = "Option::is_none")]
45 pub resources: Option<Vec<ClusterResourceSetBindingBindingsResources>>,
46}
47
48#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
50pub struct ClusterResourceSetBindingBindingsResources {
51 pub applied: bool,
53 #[serde(default, skip_serializing_if = "Option::is_none")]
56 pub hash: Option<String>,
57 pub kind: ClusterResourceSetBindingBindingsResourcesKind,
59 #[serde(
61 default,
62 skip_serializing_if = "Option::is_none",
63 rename = "lastAppliedTime"
64 )]
65 pub last_applied_time: Option<String>,
66 pub name: String,
68}
69
70#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
72pub enum ClusterResourceSetBindingBindingsResourcesKind {
73 Secret,
74 ConfigMap,
75}