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}
11
12use self::prelude::*;
13
14#[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq, JsonSchema)]
16#[kube(
17 group = "addons.cluster.x-k8s.io",
18 version = "v1beta2",
19 kind = "ClusterResourceSetBinding",
20 plural = "clusterresourcesetbindings"
21)]
22#[kube(namespaced)]
23#[kube(derive = "Default")]
24#[kube(derive = "PartialEq")]
25pub struct ClusterResourceSetBindingSpec {
26 #[serde(default, skip_serializing_if = "Option::is_none")]
28 pub bindings: Option<Vec<ClusterResourceSetBindingBindings>>,
29 #[serde(rename = "clusterName")]
31 pub cluster_name: String,
32}
33
34#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq, JsonSchema)]
36pub struct ClusterResourceSetBindingBindings {
37 #[serde(rename = "clusterResourceSetName")]
39 pub cluster_resource_set_name: String,
40 #[serde(default, skip_serializing_if = "Option::is_none")]
42 pub resources: Option<Vec<ClusterResourceSetBindingBindingsResources>>,
43}
44
45#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
47pub struct ClusterResourceSetBindingBindingsResources {
48 pub applied: bool,
50 #[serde(default, skip_serializing_if = "Option::is_none")]
53 pub hash: Option<String>,
54 pub kind: ClusterResourceSetBindingBindingsResourcesKind,
56 #[serde(
58 default,
59 skip_serializing_if = "Option::is_none",
60 rename = "lastAppliedTime"
61 )]
62 pub last_applied_time: Option<String>,
63 pub name: String,
65}
66
67#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
69pub enum ClusterResourceSetBindingBindingsResourcesKind {
70 Secret,
71 ConfigMap,
72}