Documentation ¶
Index ¶
- Constants
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- func SetObjectDefaults_KubeUpgradePlan(in *KubeUpgradePlan)
- func SetObjectDefaults_KubeUpgradePlanList(in *KubeUpgradePlanList)
- func SetObjectDefaults_KubeUpgradeSpec(spec *KubeUpgradeSpec)
- func SetObjectDefaults_KubeUpgradeStatus(status *KubeUpgradeStatus)
- type KubeUpgradePlan
- type KubeUpgradePlanGroup
- type KubeUpgradePlanList
- type KubeUpgradeSpec
- type KubeUpgradeStatus
Constants ¶
const ( PlanStatusUnknown = "Unknown" PlanStatusProgressing = "Progressing" PlanStatusWaiting = "Waiting" PlanStatusComplete = "Complete" )
Variables ¶
var ( SchemeBuilder runtime.SchemeBuilder AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{
Group: "kubeupgrade.heathcliff.eu",
Version: "v1alpha1",
}
Define your schema name and the version
Functions ¶
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
func SetObjectDefaults_KubeUpgradePlan ¶
func SetObjectDefaults_KubeUpgradePlan(in *KubeUpgradePlan)
func SetObjectDefaults_KubeUpgradePlanList ¶
func SetObjectDefaults_KubeUpgradePlanList(in *KubeUpgradePlanList)
func SetObjectDefaults_KubeUpgradeSpec ¶
func SetObjectDefaults_KubeUpgradeSpec(spec *KubeUpgradeSpec)
func SetObjectDefaults_KubeUpgradeStatus ¶
func SetObjectDefaults_KubeUpgradeStatus(status *KubeUpgradeStatus)
Types ¶
type KubeUpgradePlan ¶
type KubeUpgradePlan struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +required Spec KubeUpgradeSpec `json:"spec" valid:"required"` // +optional Status KubeUpgradeStatus `json:"status,omitempty"` }
+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:printcolumn:JSONPath=.spec.kubernetesVersion,name=Version,type=string,description="The targeted kubernetes version" +kubebuilder:printcolumn:JSONPath=.status.summary,name=Status,type=string,description="A summary of the overall status of the cluster" +kubebuilder:resource:scope=Cluster,shortName=plan +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*KubeUpgradePlan) DeepCopy ¶
func (in *KubeUpgradePlan) DeepCopy() *KubeUpgradePlan
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeUpgradePlan.
func (*KubeUpgradePlan) DeepCopyInto ¶
func (in *KubeUpgradePlan) DeepCopyInto(out *KubeUpgradePlan)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubeUpgradePlan) DeepCopyObject ¶
func (in *KubeUpgradePlan) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KubeUpgradePlanGroup ¶
type KubeUpgradePlanGroup struct { // Specify group(s) that should be upgraded first. // Should be used to ensure control-plane nodes are upgraded first. // +optional // +kubebuilder:example=control-plane DependsOn []string `json:"dependsOn,omitempty"` // The labels by which to filter for this group // +required // +kubebuilder:validation:MinProperties=1 // +kubebuilder:example="node-role.kubernetes.io/control-plane;node-role.kubernetes.io/compute" Labels map[string]string `json:"labels"` }
func (*KubeUpgradePlanGroup) DeepCopy ¶
func (in *KubeUpgradePlanGroup) DeepCopy() *KubeUpgradePlanGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeUpgradePlanGroup.
func (*KubeUpgradePlanGroup) DeepCopyInto ¶
func (in *KubeUpgradePlanGroup) DeepCopyInto(out *KubeUpgradePlanGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeUpgradePlanList ¶
type KubeUpgradePlanList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` Items []KubeUpgradePlan `json:"items"` }
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true
func (*KubeUpgradePlanList) DeepCopy ¶
func (in *KubeUpgradePlanList) DeepCopy() *KubeUpgradePlanList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeUpgradePlanList.
func (*KubeUpgradePlanList) DeepCopyInto ¶
func (in *KubeUpgradePlanList) DeepCopyInto(out *KubeUpgradePlanList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubeUpgradePlanList) DeepCopyObject ¶
func (in *KubeUpgradePlanList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KubeUpgradeSpec ¶
type KubeUpgradeSpec struct { // The kubernetes version the cluster should be at. // If the actual version differs, the cluster will be upgraded // +required // +kubebuilder:example=v1.31.0 // +kubebuilder:validation:Pattern=v[0-9]+\.[0-9]+\.[0-9]+ KubernetesVersion string `json:"kubernetesVersion"` // The different groups in which the nodes will be upgraded. // At minimum needs to separate control-plane from compute nodes, to ensure that control-plane nodes will be upgraded first. // +required // +kubebuilder:validation:MinProperties=1 Groups map[string]KubeUpgradePlanGroup `json:"groups"` }
func (*KubeUpgradeSpec) DeepCopy ¶
func (in *KubeUpgradeSpec) DeepCopy() *KubeUpgradeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeUpgradeSpec.
func (*KubeUpgradeSpec) DeepCopyInto ¶
func (in *KubeUpgradeSpec) DeepCopyInto(out *KubeUpgradeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeUpgradeStatus ¶
type KubeUpgradeStatus struct { // A summary of the overall status of the cluster // +kubebuilder:validation:Enum=Unknown;Waiting;Progressing;Complete // +default="Unknown" Summary string `json:"summary,omitempty"` // The current status of each group Groups map[string]string `json:"groups,omitempty"` }
func (*KubeUpgradeStatus) DeepCopy ¶
func (in *KubeUpgradeStatus) DeepCopy() *KubeUpgradeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeUpgradeStatus.
func (*KubeUpgradeStatus) DeepCopyInto ¶
func (in *KubeUpgradeStatus) DeepCopyInto(out *KubeUpgradeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.