k8s_cluster_api/v1beta1/bootstrap/kubeadm/kubeadmconfig/
template.rs

1use super::*;
2
3mod impls;
4
5/// KubeadmConfigTemplateSpec defines the desired state of KubeadmConfigTemplate.
6#[skip_serializing_none]
7#[derive(Clone, Debug, Default, Serialize, Deserialize, CustomResource)]
8#[serde(rename_all = "camelCase")]
9#[kube(
10    group = "bootstrap.cluster.x-k8s.io",
11    version = "v1beta1",
12    kind = "KubeadmConfigTemplate",
13    plural = "kubeadmconfigtemplates"
14)]
15#[kube(namespaced)]
16#[kube(schema = "disabled")]
17pub struct KubeadmConfigTemplateSpec {
18    pub template: KubeadmConfigTemplateResource, // `json:"template"`
19}
20
21/// KubeadmConfigTemplateResource defines the Template structure.
22#[skip_serializing_none]
23#[derive(Clone, Debug, Default, Serialize, Deserialize)]
24#[serde(rename_all = "camelCase")]
25pub struct KubeadmConfigTemplateResource {
26    pub spec: KubeadmConfigSpec, // `json:"spec,omitempty"`
27}
28
29/*
30
31package v1beta1
32
33import (
34    metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
35)
36
37// +kubebuilder:object:root=true
38// +kubebuilder:resource:path=kubeadmconfigtemplates,scope=Namespaced,categories=cluster-api
39// +kubebuilder:storageversion
40// +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="Time duration since creation of KubeadmConfigTemplate"
41
42// KubeadmConfigTemplate is the Schema for the kubeadmconfigtemplates API.
43type KubeadmConfigTemplate struct {
44    metav1.TypeMeta   `json:",inline"`
45    metav1.ObjectMeta `json:"metadata,omitempty"`
46
47    Spec KubeadmConfigTemplateSpec `json:"spec,omitempty"`
48}
49
50// +kubebuilder:object:root=true
51
52// KubeadmConfigTemplateList contains a list of KubeadmConfigTemplate.
53type KubeadmConfigTemplateList struct {
54    metav1.TypeMeta `json:",inline"`
55    metav1.ListMeta `json:"metadata,omitempty"`
56    Items           []KubeadmConfigTemplate `json:"items"`
57}
58
59func init() {
60    SchemeBuilder.Register(&KubeadmConfigTemplate{}, &KubeadmConfigTemplateList{})
61}
62*/