v1alpha1

package
v1.12.0-beta.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2025 License: Apache-2.0 Imports: 10 Imported by: 4

Documentation

Overview

Package v1alpha1 contains the v1alpha1 RuntimeHooks.

Note: This package contains the API of Runtime Hooks. It does not contain any Go types for CRDs. +kubebuilder:object:generate=true +k8s:openapi-gen=true

Index

Constants

View Source
const BuiltinsName = "builtin"

BuiltinsName is the name of the builtin variable.

View Source
const DefaultHandlersTimeoutSeconds = 10

DefaultHandlersTimeoutSeconds defines the default timeout duration for client calls to ExtensionHandlers.

Variables

View Source
var (
	// GroupVersion is the group version identifying RuntimeHooks defined in this package
	// and their request and response types.
	GroupVersion = schema.GroupVersion{Group: "hooks.runtime.cluster.x-k8s.io", Version: "v1alpha1"}

	// AddToCatalog adds RuntimeHooks defined in this package and their request and
	// response types to a catalog.
	AddToCatalog = catalogBuilder.AddToCatalog
)

Functions

func AfterClusterUpgrade

AfterClusterUpgrade is the hook that is called after the entire cluster is updated to the target Kubernetes version.

func AfterControlPlaneInitialized

AfterControlPlaneInitialized is the hook that will be called after the control plane is initialized for the first time.

func AfterControlPlaneUpgrade

AfterControlPlaneUpgrade is the hook called after the control plane is successfully upgraded to the target Kubernetes version and before the target version is propagated to the workload machines.

func AfterWorkersUpgrade

AfterWorkersUpgrade is the hook called after the control plane is successfully upgraded to the target Kubernetes version and before the target version is propagated to the workload machines.

func BeforeClusterCreate

BeforeClusterCreate is the hook that will be called right before the topology of the Cluster is created.

func BeforeClusterDelete

BeforeClusterDelete is the hook that is called after delete is issued on a cluster and before the cluster and its underlying objects are deleted.

func BeforeClusterUpgrade

BeforeClusterUpgrade is the hook that will be called after a Cluster.spec.version is upgraded and before the updated version is propagated to the underlying objects.

func BeforeControlPlaneUpgrade

BeforeControlPlaneUpgrade is the hook that will be called before a new version is propagated to the control plane object.

func BeforeWorkersUpgrade

BeforeWorkersUpgrade is the hook that will be called before a new version is propagated to workers.

func CanUpdateMachine

CanUpdateMachine is the hook that will be called to determine if an extension can handle specific machine changes for in-place updates.

func CanUpdateMachineSet

CanUpdateMachineSet is the hook that will be called to determine if an extension can handle specific MachineSet changes for in-place updates.

func DiscoverVariables

DiscoverVariables returns variable schemas defined by a Runtime Extension.

func Discovery

func Discovery(*DiscoveryRequest, *DiscoveryResponse)

Discovery represents the discovery hook.

func GeneratePatches

GeneratePatches generates patches during topology reconciliation for the entire Cluster topology.

func GenerateUpgradePlan

GenerateUpgradePlan is the hook that will be called to generate an upgrade plan for a cluster. This hook allows runtime extensions to specify intermediate Kubernetes versions that must be applied during an upgrade from the current version to the target version.

func UpdateMachine

UpdateMachine is the hook that will be called to perform in-place updates on a machine. This hook should be idempotent and can be called multiple times for the same machine until it reports Done or Failed status.

func ValidateTopology

ValidateTopology validates the Cluster topology after all patches have been applied.

Types

type AfterClusterUpgradeRequest

type AfterClusterUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// kubernetesVersion is the Kubernetes version after upgrade.
	// +required
	KubernetesVersion string `json:"kubernetesVersion"`
}

AfterClusterUpgradeRequest is the request of the AfterClusterUpgrade hook. +kubebuilder:object:root=true

func (*AfterClusterUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterClusterUpgradeRequest.

func (*AfterClusterUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterClusterUpgradeRequest) DeepCopyObject

func (in *AfterClusterUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterClusterUpgradeResponse

type AfterClusterUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`
}

AfterClusterUpgradeResponse is the response of the AfterClusterUpgrade hook. +kubebuilder:object:root=true

func (*AfterClusterUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterClusterUpgradeResponse.

func (*AfterClusterUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterClusterUpgradeResponse) DeepCopyObject

func (in *AfterClusterUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterControlPlaneInitializedRequest

type AfterControlPlaneInitializedRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`
}

AfterControlPlaneInitializedRequest is the request of the AfterControlPlaneInitialized hook. +kubebuilder:object:root=true

func (*AfterControlPlaneInitializedRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterControlPlaneInitializedRequest.

func (*AfterControlPlaneInitializedRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterControlPlaneInitializedRequest) DeepCopyObject

func (in *AfterControlPlaneInitializedRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterControlPlaneInitializedResponse

type AfterControlPlaneInitializedResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`
}

AfterControlPlaneInitializedResponse is the response of the AfterControlPlaneInitialized hook. +kubebuilder:object:root=true

func (*AfterControlPlaneInitializedResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterControlPlaneInitializedResponse.

func (*AfterControlPlaneInitializedResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterControlPlaneInitializedResponse) DeepCopyObject

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterControlPlaneUpgradeRequest

type AfterControlPlaneUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// kubernetesVersion is the Kubernetes version of the control plane after an upgrade step.
	// +required
	KubernetesVersion string `json:"kubernetesVersion"`

	// controlPlaneUpgrades is the list of the remaining version upgrade steps for the control plane, if any.
	// +optional
	ControlPlaneUpgrades []UpgradeStepInfo `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of the remaining version upgrade steps for workers, if any.
	// +optional
	WorkersUpgrades []UpgradeStepInfo `json:"workersUpgrades,omitempty"`
}

AfterControlPlaneUpgradeRequest is the request of the AfterControlPlaneUpgrade hook. +kubebuilder:object:root=true

func (*AfterControlPlaneUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterControlPlaneUpgradeRequest.

func (*AfterControlPlaneUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterControlPlaneUpgradeRequest) DeepCopyObject

func (in *AfterControlPlaneUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterControlPlaneUpgradeResponse

type AfterControlPlaneUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

AfterControlPlaneUpgradeResponse is the response of the AfterControlPlaneUpgrade hook. +kubebuilder:object:root=true

func (*AfterControlPlaneUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterControlPlaneUpgradeResponse.

func (*AfterControlPlaneUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterControlPlaneUpgradeResponse) DeepCopyObject

func (in *AfterControlPlaneUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterWorkersUpgradeRequest

type AfterWorkersUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// kubernetesVersion is the Kubernetes version of the workers after an upgrade step.
	// +required
	KubernetesVersion string `json:"kubernetesVersion"`

	// controlPlaneUpgrades is the list of the remaining version upgrade steps for the control plane, if any.
	// +optional
	ControlPlaneUpgrades []UpgradeStepInfo `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of the remaining version upgrade steps for workers, if any.
	// +optional
	WorkersUpgrades []UpgradeStepInfo `json:"workersUpgrades,omitempty"`
}

AfterWorkersUpgradeRequest is the request of the AfterWorkersUpgrade hook. +kubebuilder:object:root=true

func (*AfterWorkersUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterWorkersUpgradeRequest.

func (*AfterWorkersUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterWorkersUpgradeRequest) DeepCopyObject

func (in *AfterWorkersUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AfterWorkersUpgradeResponse

type AfterWorkersUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

AfterWorkersUpgradeResponse is the response of the AfterWorkersUpgrade hook. +kubebuilder:object:root=true

func (*AfterWorkersUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AfterWorkersUpgradeResponse.

func (*AfterWorkersUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AfterWorkersUpgradeResponse) DeepCopyObject

func (in *AfterWorkersUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterCreateRequest

type BeforeClusterCreateRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`
}

BeforeClusterCreateRequest is the request of the BeforeClusterCreate hook. +kubebuilder:object:root=true

func (*BeforeClusterCreateRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterCreateRequest.

func (*BeforeClusterCreateRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterCreateRequest) DeepCopyObject

func (in *BeforeClusterCreateRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterCreateResponse

type BeforeClusterCreateResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

BeforeClusterCreateResponse is the response of the BeforeClusterCreate hook. +kubebuilder:object:root=true

func (*BeforeClusterCreateResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterCreateResponse.

func (*BeforeClusterCreateResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterCreateResponse) DeepCopyObject

func (in *BeforeClusterCreateResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterDeleteRequest

type BeforeClusterDeleteRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`
}

BeforeClusterDeleteRequest is the request of the BeforeClusterDelete hook. +kubebuilder:object:root=true

func (*BeforeClusterDeleteRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterDeleteRequest.

func (*BeforeClusterDeleteRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterDeleteRequest) DeepCopyObject

func (in *BeforeClusterDeleteRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterDeleteResponse

type BeforeClusterDeleteResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

BeforeClusterDeleteResponse is the response of the BeforeClusterDelete hook. +kubebuilder:object:root=true

func (*BeforeClusterDeleteResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterDeleteResponse.

func (*BeforeClusterDeleteResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterDeleteResponse) DeepCopyObject

func (in *BeforeClusterDeleteResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterUpgradeRequest

type BeforeClusterUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// fromKubernetesVersion is the current Kubernetes version of the cluster.
	// +required
	FromKubernetesVersion string `json:"fromKubernetesVersion"`

	// toKubernetesVersion is the target Kubernetes version of the upgrade.
	// +required
	ToKubernetesVersion string `json:"toKubernetesVersion"`

	// controlPlaneUpgrades is the list of version upgrade steps for the control plane.
	// +optional
	ControlPlaneUpgrades []UpgradeStepInfo `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of version upgrade steps for the workers.
	// +optional
	WorkersUpgrades []UpgradeStepInfo `json:"workersUpgrades,omitempty"`
}

BeforeClusterUpgradeRequest is the request of the BeforeClusterUpgrade hook. +kubebuilder:object:root=true

func (*BeforeClusterUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterUpgradeRequest.

func (*BeforeClusterUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterUpgradeRequest) DeepCopyObject

func (in *BeforeClusterUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeClusterUpgradeResponse

type BeforeClusterUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

BeforeClusterUpgradeResponse is the response of the BeforeClusterUpgrade hook. +kubebuilder:object:root=true

func (*BeforeClusterUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeClusterUpgradeResponse.

func (*BeforeClusterUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeClusterUpgradeResponse) DeepCopyObject

func (in *BeforeClusterUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeControlPlaneUpgradeRequest

type BeforeControlPlaneUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// fromKubernetesVersion is the current Kubernetes version of the control plane for the next upgrade step.
	// +required
	FromKubernetesVersion string `json:"fromKubernetesVersion"`

	// toKubernetesVersion is the target Kubernetes version of the control plane for the next upgrade step.
	// +required
	ToKubernetesVersion string `json:"toKubernetesVersion"`

	// controlPlaneUpgrades is the list of the remaining version upgrade steps for the control plane, if any.
	// +optional
	ControlPlaneUpgrades []UpgradeStepInfo `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of the remaining version upgrade steps for workers, if any.
	// +optional
	WorkersUpgrades []UpgradeStepInfo `json:"workersUpgrades,omitempty"`
}

BeforeControlPlaneUpgradeRequest is the request of the BeforeControlPlane hook. +kubebuilder:object:root=true

func (*BeforeControlPlaneUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeControlPlaneUpgradeRequest.

func (*BeforeControlPlaneUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeControlPlaneUpgradeRequest) DeepCopyObject

func (in *BeforeControlPlaneUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeControlPlaneUpgradeResponse

type BeforeControlPlaneUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

BeforeControlPlaneUpgradeResponse is the response of the BeforeControlPlaneUpgrade hook. +kubebuilder:object:root=true

func (*BeforeControlPlaneUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeControlPlaneUpgradeResponse.

func (*BeforeControlPlaneUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeControlPlaneUpgradeResponse) DeepCopyObject

func (in *BeforeControlPlaneUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeWorkersUpgradeRequest

type BeforeWorkersUpgradeRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the lifecycle hook corresponds to.
	// +required
	Cluster clusterv1beta1.Cluster `json:"cluster"`

	// fromKubernetesVersion is the current Kubernetes version of the workers for the next upgrade step.
	// +required
	FromKubernetesVersion string `json:"fromKubernetesVersion"`

	// toKubernetesVersion is the target Kubernetes version of the workers for the next upgrade step.
	// +required
	ToKubernetesVersion string `json:"toKubernetesVersion"`

	// controlPlaneUpgrades is the list of the remaining version upgrade steps for the control plane, if any.
	// +optional
	ControlPlaneUpgrades []UpgradeStepInfo `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of the remaining version upgrade steps for workers, if any.
	// +optional
	WorkersUpgrades []UpgradeStepInfo `json:"workersUpgrades,omitempty"`
}

BeforeWorkersUpgradeRequest is the request of the BeforeWorkersUpgrade hook. +kubebuilder:object:root=true

func (*BeforeWorkersUpgradeRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeWorkersUpgradeRequest.

func (*BeforeWorkersUpgradeRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeWorkersUpgradeRequest) DeepCopyObject

func (in *BeforeWorkersUpgradeRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BeforeWorkersUpgradeResponse

type BeforeWorkersUpgradeResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

BeforeWorkersUpgradeResponse is the response of the BeforeWorkersUpgrade hook. +kubebuilder:object:root=true

func (*BeforeWorkersUpgradeResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BeforeWorkersUpgradeResponse.

func (*BeforeWorkersUpgradeResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BeforeWorkersUpgradeResponse) DeepCopyObject

func (in *BeforeWorkersUpgradeResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type Builtins

type Builtins struct {
	// cluster represents builtin cluster variables.
	// +optional
	Cluster *ClusterBuiltins `json:"cluster,omitempty"`
	// controlPlane represents builtin ControlPlane variables.
	// +optional
	ControlPlane *ControlPlaneBuiltins `json:"controlPlane,omitempty"`
	// machineDeployment represents builtin MachineDeployment variables.
	// +optional
	MachineDeployment *MachineDeploymentBuiltins `json:"machineDeployment,omitempty"`
	// machinePool represents builtin MachinePool variables.
	// +optional
	MachinePool *MachinePoolBuiltins `json:"machinePool,omitempty"`
}

Builtins represents builtin variables exposed through patches.

func (*Builtins) DeepCopy

func (in *Builtins) DeepCopy() *Builtins

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Builtins.

func (*Builtins) DeepCopyInto

func (in *Builtins) DeepCopyInto(out *Builtins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CanUpdateMachineRequest

type CanUpdateMachineRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// current contains the current state of the Machine and related objects.
	// +required
	Current CanUpdateMachineRequestObjects `json:"current,omitempty,omitzero"`

	// desired contains the desired state of the Machine and related objects.
	// +required
	Desired CanUpdateMachineRequestObjects `json:"desired,omitempty,omitzero"`
}

CanUpdateMachineRequest is the request of the CanUpdateMachine hook. +kubebuilder:object:root=true

func (*CanUpdateMachineRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineRequest.

func (*CanUpdateMachineRequest) DeepCopyInto

func (in *CanUpdateMachineRequest) DeepCopyInto(out *CanUpdateMachineRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CanUpdateMachineRequest) DeepCopyObject

func (in *CanUpdateMachineRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CanUpdateMachineRequestObjects

type CanUpdateMachineRequestObjects struct {
	// machine is the full Machine object.
	// +required
	Machine clusterv1.Machine `json:"machine,omitempty,omitzero"`

	// infrastructureMachine is the infra Machine object.
	// +required
	InfrastructureMachine runtime.RawExtension `json:"infrastructureMachine,omitempty,omitzero"`

	// bootstrapConfig is the bootstrap config object.
	// +optional
	BootstrapConfig runtime.RawExtension `json:"bootstrapConfig,omitempty,omitzero"`
}

CanUpdateMachineRequestObjects groups objects for CanUpdateMachineRequest.

func (*CanUpdateMachineRequestObjects) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineRequestObjects.

func (*CanUpdateMachineRequestObjects) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CanUpdateMachineResponse

type CanUpdateMachineResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// machinePatch when applied to the current Machine spec, indicates changes handled in-place.
	// +optional
	MachinePatch Patch `json:"machinePatch,omitempty,omitzero"`

	// infrastructureMachinePatch indicates infra Machine spec changes handled in-place.
	// +optional
	InfrastructureMachinePatch Patch `json:"infrastructureMachinePatch,omitempty,omitzero"`

	// bootstrapConfigPatch indicates bootstrap config spec changes handled in-place.
	// +optional
	BootstrapConfigPatch Patch `json:"bootstrapConfigPatch,omitempty,omitzero"`
}

CanUpdateMachineResponse is the response of the CanUpdateMachine hook. +kubebuilder:object:root=true

func (*CanUpdateMachineResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineResponse.

func (*CanUpdateMachineResponse) DeepCopyInto

func (in *CanUpdateMachineResponse) DeepCopyInto(out *CanUpdateMachineResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CanUpdateMachineResponse) DeepCopyObject

func (in *CanUpdateMachineResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CanUpdateMachineSetRequest

type CanUpdateMachineSetRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// current contains the current state of the MachineSet and related objects.
	// +required
	Current CanUpdateMachineSetRequestObjects `json:"current,omitempty,omitzero"`

	// desired contains the desired state of the MachineSet and related objects.
	// +required
	Desired CanUpdateMachineSetRequestObjects `json:"desired,omitempty,omitzero"`
}

CanUpdateMachineSetRequest is the request of the CanUpdateMachineSet hook. +kubebuilder:object:root=true

func (*CanUpdateMachineSetRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineSetRequest.

func (*CanUpdateMachineSetRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CanUpdateMachineSetRequest) DeepCopyObject

func (in *CanUpdateMachineSetRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CanUpdateMachineSetRequestObjects

type CanUpdateMachineSetRequestObjects struct {
	// machineSet is the full MachineSet object.
	// +required
	MachineSet clusterv1.MachineSet `json:"machineSet,omitempty,omitzero"`

	// infrastructureMachineTemplate is the provider-specific InfrastructureMachineTemplate object.
	// +required
	InfrastructureMachineTemplate runtime.RawExtension `json:"infrastructureMachineTemplate,omitempty,omitzero"`

	// bootstrapConfigTemplate is the provider-specific BootstrapConfigTemplate object.
	// +optional
	BootstrapConfigTemplate runtime.RawExtension `json:"bootstrapConfigTemplate,omitempty,omitzero"`
}

CanUpdateMachineSetRequestObjects groups objects for CanUpdateMachineSetRequest.

func (*CanUpdateMachineSetRequestObjects) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineSetRequestObjects.

func (*CanUpdateMachineSetRequestObjects) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CanUpdateMachineSetResponse

type CanUpdateMachineSetResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// machineSetPatch when applied to the current MachineSet spec, indicates changes handled in-place.
	// +optional
	MachineSetPatch Patch `json:"machineSetPatch,omitempty,omitzero"`

	// infrastructureMachineTemplatePatch indicates infra template spec changes handled in-place.
	// +optional
	InfrastructureMachineTemplatePatch Patch `json:"infrastructureMachineTemplatePatch,omitempty,omitzero"`

	// bootstrapConfigTemplatePatch indicates bootstrap template spec changes handled in-place.
	// +optional
	BootstrapConfigTemplatePatch Patch `json:"bootstrapConfigTemplatePatch,omitempty,omitzero"`
}

CanUpdateMachineSetResponse is the response of the CanUpdateMachineSet hook. +kubebuilder:object:root=true

func (*CanUpdateMachineSetResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CanUpdateMachineSetResponse.

func (*CanUpdateMachineSetResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CanUpdateMachineSetResponse) DeepCopyObject

func (in *CanUpdateMachineSetResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterBuiltins

type ClusterBuiltins struct {
	// name is the name of the cluster.
	// +optional
	Name string `json:"name,omitempty"`

	// namespace is the namespace of the cluster.
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// uid is the unqiue identifier of the cluster.
	// +optional
	UID types.UID `json:"uid,omitempty"`

	// metadata is the metadata set on the Cluster object.
	// +optional
	Metadata *clusterv1beta1.ObjectMeta `json:"metadata,omitempty"`

	// topology represents the cluster topology variables.
	// +optional
	Topology *ClusterTopologyBuiltins `json:"topology,omitempty"`

	// network represents the cluster network variables.
	// +optional
	Network *ClusterNetworkBuiltins `json:"network,omitempty"`
}

ClusterBuiltins represents builtin cluster variables.

func (*ClusterBuiltins) DeepCopy

func (in *ClusterBuiltins) DeepCopy() *ClusterBuiltins

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterBuiltins.

func (*ClusterBuiltins) DeepCopyInto

func (in *ClusterBuiltins) DeepCopyInto(out *ClusterBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterNetworkBuiltins

type ClusterNetworkBuiltins struct {
	// serviceDomain is the domain name for services.
	// +optional
	ServiceDomain *string `json:"serviceDomain,omitempty"`
	// services is the network ranges from which service VIPs are allocated.
	// +optional
	Services []string `json:"services,omitempty"`
	// pods is the network ranges from which Pod networks are allocated.
	// +optional
	Pods []string `json:"pods,omitempty"`
}

ClusterNetworkBuiltins represents builtin cluster network variables.

func (*ClusterNetworkBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterNetworkBuiltins.

func (*ClusterNetworkBuiltins) DeepCopyInto

func (in *ClusterNetworkBuiltins) DeepCopyInto(out *ClusterNetworkBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterTopologyBuiltins

type ClusterTopologyBuiltins struct {
	// version is the Kubernetes version of the Cluster.
	// NOTE: Please note that this version might temporarily differ from the version
	// of the ControlPlane or workers while an upgrade process is being orchestrated.
	// +optional
	Version string `json:"version,omitempty"`

	// classRef is the ref to the ClusterClass that is used for the topology.
	//
	// +required
	ClassRef ClusterTopologyClusterClassRefBuiltins `json:"classRef"`

	// class is the name of the ClusterClass of the Cluster.
	//
	// Deprecated: Class is deprecated in favor of ClassRef.Name and is going to be removed in the next apiVersion.
	//
	// +optional
	Class string `json:"class,omitempty"`

	// classNamespace is the namespace of the ClusterClass of the Cluster.
	//
	// Deprecated: ClassNamespace is deprecated in favor of ClassRef.Namespace and is going to be removed in the next apiVersion.
	//
	// +optional
	ClassNamespace string `json:"classNamespace,omitempty"`
}

ClusterTopologyBuiltins represents builtin cluster topology variables.

func (*ClusterTopologyBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterTopologyBuiltins.

func (*ClusterTopologyBuiltins) DeepCopyInto

func (in *ClusterTopologyBuiltins) DeepCopyInto(out *ClusterTopologyBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterTopologyClusterClassRefBuiltins

type ClusterTopologyClusterClassRefBuiltins struct {
	// name is the name of the ClusterClass that is used for the topology.
	//
	// +required
	Name string `json:"name"`

	// namespace is the namespace of the ClusterClass that is used for the topology.
	//
	// +required
	Namespace string `json:"namespace"`
}

ClusterTopologyClusterClassRefBuiltins is the ref to the ClusterClass that is used for the topology.

func (*ClusterTopologyClusterClassRefBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterTopologyClusterClassRefBuiltins.

func (*ClusterTopologyClusterClassRefBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CommonRequest

type CommonRequest struct {
	// settings defines key value pairs to be passed to the call.
	// +optional
	Settings map[string]string `json:"settings,omitempty"`
}

CommonRequest is the data structure common to all request types. Note: By embedding CommonRequest in a runtime.Object the RequestObject interface is satisfied.

func (*CommonRequest) DeepCopy

func (in *CommonRequest) DeepCopy() *CommonRequest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonRequest.

func (*CommonRequest) DeepCopyInto

func (in *CommonRequest) DeepCopyInto(out *CommonRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CommonRequest) GetSettings

func (r *CommonRequest) GetSettings() map[string]string

GetSettings get the Settings field from the CommonRequest.

func (*CommonRequest) SetSettings

func (r *CommonRequest) SetSettings(settings map[string]string)

SetSettings sets the Settings field in the CommonRequest.

type CommonResponse

type CommonResponse struct {
	// status of the call. One of "Success" or "Failure".
	// +required
	Status ResponseStatus `json:"status"`

	// message is a human-readable description of the status of the call.
	// +optional
	Message string `json:"message,omitempty"`
}

CommonResponse is the data structure common to all response types. Note: By embedding CommonResponse in a runtime.Object the ResponseObject interface is satisfied.

func (*CommonResponse) DeepCopy

func (in *CommonResponse) DeepCopy() *CommonResponse

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonResponse.

func (*CommonResponse) DeepCopyInto

func (in *CommonResponse) DeepCopyInto(out *CommonResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CommonResponse) GetMessage

func (r *CommonResponse) GetMessage() string

GetMessage returns the Message field for the CommonResponse.

func (*CommonResponse) GetStatus

func (r *CommonResponse) GetStatus() ResponseStatus

GetStatus returns the Status field for the CommonResponse.

func (*CommonResponse) SetMessage

func (r *CommonResponse) SetMessage(message string)

SetMessage sets the Message field for the CommonResponse.

func (*CommonResponse) SetStatus

func (r *CommonResponse) SetStatus(status ResponseStatus)

SetStatus sets the Status field for the CommonResponse.

type CommonRetryResponse

type CommonRetryResponse struct {
	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// retryAfterSeconds when set to a non-zero value signifies that the hook
	// will be called again at a future time.
	// +required
	RetryAfterSeconds int32 `json:"retryAfterSeconds"`
}

CommonRetryResponse is the data structure which contains all common and retry fields. Note: By embedding CommonRetryResponse in a runtime.Object the RetryResponseObject interface is satisfied.

func (*CommonRetryResponse) DeepCopy

func (in *CommonRetryResponse) DeepCopy() *CommonRetryResponse

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonRetryResponse.

func (*CommonRetryResponse) DeepCopyInto

func (in *CommonRetryResponse) DeepCopyInto(out *CommonRetryResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CommonRetryResponse) GetRetryAfterSeconds

func (r *CommonRetryResponse) GetRetryAfterSeconds() int32

GetRetryAfterSeconds returns the RetryAfterSeconds field for the CommonRetryResponse.

func (*CommonRetryResponse) SetRetryAfterSeconds

func (r *CommonRetryResponse) SetRetryAfterSeconds(retryAfterSeconds int32)

SetRetryAfterSeconds sets the RetryAfterSeconds field for the CommonRetryResponse.

type ControlPlaneBuiltins

type ControlPlaneBuiltins struct {
	// version is the Kubernetes version of the ControlPlane object.
	// NOTE: Please note that this version is the version we are currently reconciling towards.
	// It can differ from the current version of the ControlPlane while an upgrade process is
	// being orchestrated.
	// +optional
	Version string `json:"version,omitempty"`

	// metadata is the metadata set on the ControlPlane object.
	// +optional
	Metadata *clusterv1beta1.ObjectMeta `json:"metadata,omitempty"`

	// name is the name of the ControlPlane,
	// to which the current template belongs to.
	// +optional
	Name string `json:"name,omitempty"`

	// replicas is the value of the replicas field of the ControlPlane object.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// machineTemplate is the value of the .spec.machineTemplate field of the ControlPlane object.
	// +optional
	MachineTemplate *ControlPlaneMachineTemplateBuiltins `json:"machineTemplate,omitempty"`
}

ControlPlaneBuiltins represents builtin ControlPlane variables. NOTE: These variables are only set for templates belonging to the ControlPlane object.

func (*ControlPlaneBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneBuiltins.

func (*ControlPlaneBuiltins) DeepCopyInto

func (in *ControlPlaneBuiltins) DeepCopyInto(out *ControlPlaneBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ControlPlaneMachineTemplateBuiltins

type ControlPlaneMachineTemplateBuiltins struct {
	// infrastructureRef is the value of the infrastructureRef field of ControlPlane.spec.machineTemplate.
	// +optional
	InfrastructureRef ControlPlaneMachineTemplateInfrastructureRefBuiltins `json:"infrastructureRef,omitempty"`
}

ControlPlaneMachineTemplateBuiltins is the value of the .spec.machineTemplate field of the ControlPlane object.

func (*ControlPlaneMachineTemplateBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineTemplateBuiltins.

func (*ControlPlaneMachineTemplateBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ControlPlaneMachineTemplateInfrastructureRefBuiltins

type ControlPlaneMachineTemplateInfrastructureRefBuiltins struct {
	// name of the infrastructureRef.
	// +optional
	Name string `json:"name,omitempty"`
}

ControlPlaneMachineTemplateInfrastructureRefBuiltins is the value of the infrastructureRef field of ControlPlane.spec.machineTemplate.

func (*ControlPlaneMachineTemplateInfrastructureRefBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineTemplateInfrastructureRefBuiltins.

func (*ControlPlaneMachineTemplateInfrastructureRefBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DiscoverVariablesRequest

type DiscoverVariablesRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains Settings field common to all request types.
	CommonRequest `json:",inline"`
}

DiscoverVariablesRequest is the request of the DiscoverVariables hook. +kubebuilder:object:root=true

func (*DiscoverVariablesRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiscoverVariablesRequest.

func (*DiscoverVariablesRequest) DeepCopyInto

func (in *DiscoverVariablesRequest) DeepCopyInto(out *DiscoverVariablesRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DiscoverVariablesRequest) DeepCopyObject

func (in *DiscoverVariablesRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DiscoverVariablesResponse

type DiscoverVariablesResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// variables are variable schemas for variables defined by the DiscoverVariables hook.
	// +optional
	Variables []clusterv1beta1.ClusterClassVariable `json:"variables,omitempty"`
}

DiscoverVariablesResponse is the response of the DiscoverVariables hook. +kubebuilder:object:root=true

func (*DiscoverVariablesResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiscoverVariablesResponse.

func (*DiscoverVariablesResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DiscoverVariablesResponse) DeepCopyObject

func (in *DiscoverVariablesResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DiscoveryRequest

type DiscoveryRequest struct {
	metav1.TypeMeta `json:",inline"`
}

DiscoveryRequest is the request of the Discovery hook. +kubebuilder:object:root=true

func (*DiscoveryRequest) DeepCopy

func (in *DiscoveryRequest) DeepCopy() *DiscoveryRequest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiscoveryRequest.

func (*DiscoveryRequest) DeepCopyInto

func (in *DiscoveryRequest) DeepCopyInto(out *DiscoveryRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DiscoveryRequest) DeepCopyObject

func (in *DiscoveryRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DiscoveryResponse

type DiscoveryResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// handlers defines the current ExtensionHandlers supported by an Extension.
	// +listType=map
	// +listMapKey=name
	// +optional
	Handlers []ExtensionHandler `json:"handlers,omitempty"`
}

DiscoveryResponse is the response of the Discovery hook. +kubebuilder:object:root=true

func (*DiscoveryResponse) DeepCopy

func (in *DiscoveryResponse) DeepCopy() *DiscoveryResponse

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiscoveryResponse.

func (*DiscoveryResponse) DeepCopyInto

func (in *DiscoveryResponse) DeepCopyInto(out *DiscoveryResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DiscoveryResponse) DeepCopyObject

func (in *DiscoveryResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ExtensionHandler

type ExtensionHandler struct {
	// name is the name of the ExtensionHandler.
	// +required
	Name string `json:"name"`

	// requestHook defines the versioned runtime hook which this ExtensionHandler serves.
	// +required
	RequestHook GroupVersionHook `json:"requestHook"`

	// timeoutSeconds defines the timeout duration for client calls to the ExtensionHandler.
	// This is defaulted to 10 if left undefined.
	// +optional
	TimeoutSeconds *int32 `json:"timeoutSeconds,omitempty"`

	// failurePolicy defines how failures in calls to the ExtensionHandler should be handled by a client.
	// This is defaulted to FailurePolicyFail if not defined.
	// +optional
	FailurePolicy *FailurePolicy `json:"failurePolicy,omitempty"`
}

ExtensionHandler represents the discovery information for an extension handler which includes the hook it supports.

func (*ExtensionHandler) DeepCopy

func (in *ExtensionHandler) DeepCopy() *ExtensionHandler

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionHandler.

func (*ExtensionHandler) DeepCopyInto

func (in *ExtensionHandler) DeepCopyInto(out *ExtensionHandler)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FailurePolicy

type FailurePolicy string

FailurePolicy specifies how unrecognized errors when calling the ExtensionHandler are handled. FailurePolicy helps with extensions not working consistently, e.g. due to an intermittent network issue. The following type of errors are never ignored by FailurePolicy Ignore: - Misconfigurations (e.g. incompatible types) - Extension explicitly returns a Status Failure.

const (
	// FailurePolicyIgnore means that an error when calling the extension is ignored.
	FailurePolicyIgnore FailurePolicy = "Ignore"

	// FailurePolicyFail means that an error when calling the extension is not ignored.
	FailurePolicyFail FailurePolicy = "Fail"
)

type GeneratePatchesRequest

type GeneratePatchesRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains Settings field common to all request types.
	CommonRequest `json:",inline"`

	// variables are global variables for all templates.
	// +optional
	Variables []Variable `json:"variables,omitempty"`

	// items is the list of templates to generate patches for.
	// +required
	Items []GeneratePatchesRequestItem `json:"items"`
}

GeneratePatchesRequest is the request of the GeneratePatches hook. +kubebuilder:object:root=true

func (*GeneratePatchesRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneratePatchesRequest.

func (*GeneratePatchesRequest) DeepCopyInto

func (in *GeneratePatchesRequest) DeepCopyInto(out *GeneratePatchesRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GeneratePatchesRequest) DeepCopyObject

func (in *GeneratePatchesRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GeneratePatchesRequestItem

type GeneratePatchesRequestItem struct {
	// uid is an identifier for this template. It allows us to correlate the template in the request
	// with the corresponding generated patches in the response.
	// +required
	UID types.UID `json:"uid"`

	// holderReference is a reference to the object where the template is used.
	// +required
	HolderReference HolderReference `json:"holderReference"`

	// object contains the template as a raw object.
	// +required
	Object runtime.RawExtension `json:"object"`

	// variables are variables specific for the current template.
	// For example some builtin variables like MachineDeployment replicas and version are context-sensitive
	// and thus are only added to templates for MachineDeployments and with values which correspond to the
	// current MachineDeployment.
	// +optional
	Variables []Variable `json:"variables,omitempty"`
}

GeneratePatchesRequestItem represents a template to generate patches for.

func (*GeneratePatchesRequestItem) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneratePatchesRequestItem.

func (*GeneratePatchesRequestItem) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GeneratePatchesResponse

type GeneratePatchesResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// items is the list of generated patches.
	// +optional
	Items []GeneratePatchesResponseItem `json:"items,omitempty"`
}

GeneratePatchesResponse is the response of the GeneratePatches hook. NOTE: The patches in GeneratePatchesResponse will be applied in the order in which they are defined to the templates of the request. Thus applying changes consecutively when iterating through internal and external patches. +kubebuilder:object:root=true

func (*GeneratePatchesResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneratePatchesResponse.

func (*GeneratePatchesResponse) DeepCopyInto

func (in *GeneratePatchesResponse) DeepCopyInto(out *GeneratePatchesResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GeneratePatchesResponse) DeepCopyObject

func (in *GeneratePatchesResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GeneratePatchesResponseItem

type GeneratePatchesResponseItem struct {
	// uid identifies the corresponding template in the request on which
	// the patch should be applied.
	// +required
	UID types.UID `json:"uid"`

	// patchType defines the type of the patch.
	// One of: "JSONPatch" or "JSONMergePatch".
	// +required
	PatchType PatchType `json:"patchType"`

	// patch contains the patch which should be applied to the template.
	// It must be of the corresponding PatchType.
	// +required
	Patch []byte `json:"patch"`
}

GeneratePatchesResponseItem is a generated patch.

func (*GeneratePatchesResponseItem) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneratePatchesResponseItem.

func (*GeneratePatchesResponseItem) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GenerateUpgradePlanRequest

type GenerateUpgradePlanRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// cluster is the cluster object the GenerateUpgradePlan request corresponds to.
	// +required
	Cluster clusterv1.Cluster `json:"cluster,omitempty,omitzero"`

	// fromControlPlaneKubernetesVersion is the current Kubernetes version of the control plane.
	// +required
	// +kubebuilder:validation:MinLength=1
	FromControlPlaneKubernetesVersion string `json:"fromControlPlaneKubernetesVersion,omitempty"`

	// fromWorkersKubernetesVersion is the min current Kubernetes version of the workers.
	// +optional
	// +kubebuilder:validation:MinLength=1
	FromWorkersKubernetesVersion string `json:"fromWorkersKubernetesVersion,omitempty"`

	// toKubernetesVersion is the target Kubernetes version for the upgrade.
	// +required
	// +kubebuilder:validation:MinLength=1
	ToKubernetesVersion string `json:"toKubernetesVersion,omitempty"`
}

GenerateUpgradePlanRequest is the request of the GenerateUpgradePlan hook. +kubebuilder:object:root=true

func (*GenerateUpgradePlanRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenerateUpgradePlanRequest.

func (*GenerateUpgradePlanRequest) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GenerateUpgradePlanRequest) DeepCopyObject

func (in *GenerateUpgradePlanRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GenerateUpgradePlanResponse

type GenerateUpgradePlanResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`

	// controlPlaneUpgrades is the list of version upgrade steps for the control plane.
	// Each entry represents an intermediate version that must be applied in sequence.
	// The following rules apply:
	// - there should be at least one version for every minor between 		fromControlPlaneKubernetesVersion (excluded) and ToKubernetesVersion (included).
	// - each version must be:
	//   - greater than fromControlPlaneKubernetesVersion (or with a different build 	number)
	//   - greater than the previous version in the list (or with a different build number)
	//   - less or equal to ToKubernetesVersion (or with a different build number)
	//   - the last version in the plan must be equal to ToKubernetesVersion
	// +optional
	ControlPlaneUpgrades []UpgradeStep `json:"controlPlaneUpgrades,omitempty"`

	// workersUpgrades is the list of version upgrade steps for the workers.
	// Each entry represents an intermediate version that must be applied in sequence.
	//
	// In case the upgrade plan for workers will be left to empty, the system will automatically
	// determine the minimal number of workers upgrade steps, thus minimizing impact on workloads and reducing
	// the overall upgrade time.
	//
	// If instead for any reason a custom upgrade path for workers is required, the following rules apply:
	// - each version must be:
	//   - equal to FromControlPlaneKubernetesVersion or to one of the versions in the control plane upgrade plan.
	//   - greater than FromWorkersKubernetesVersion (or with a different build number)
	//   - greater than the previous version in the list (or with a different build number)
	//   - less or equal to the ToKubernetesVersion (or with a different build number)
	//   - in case of versions with the same major/minor/patch version but different build number, also the order
	//     of those versions must be the same for control plane and worker upgrade plan.
	//   - the last version in the plan must be equal to ToKubernetesVersion
	//   - the upgrade plane must have all the intermediate version which workers must go through to avoid breaking rules
	//     defining the max version skew between control plane and workers.
	// +optional
	WorkersUpgrades []UpgradeStep `json:"workersUpgrades,omitempty"`
}

GenerateUpgradePlanResponse is the response of the GenerateUpgradePlan hook. +kubebuilder:object:root=true

func (*GenerateUpgradePlanResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenerateUpgradePlanResponse.

func (*GenerateUpgradePlanResponse) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GenerateUpgradePlanResponse) DeepCopyObject

func (in *GenerateUpgradePlanResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GroupVersionHook

type GroupVersionHook struct {
	// apiVersion is the group and version of the Hook
	// +required
	APIVersion string `json:"apiVersion"`

	// hook is the name of the hook
	// +required
	Hook string `json:"hook"`
}

GroupVersionHook defines the runtime hook when the ExtensionHandler is called.

func (*GroupVersionHook) DeepCopy

func (in *GroupVersionHook) DeepCopy() *GroupVersionHook

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupVersionHook.

func (*GroupVersionHook) DeepCopyInto

func (in *GroupVersionHook) DeepCopyInto(out *GroupVersionHook)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HolderReference

type HolderReference struct {
	// apiVersion of the referent.
	// +required
	APIVersion string `json:"apiVersion"`

	// kind of the referent.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
	// +required
	Kind string `json:"kind"`

	// namespace of the referent.
	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
	// +required
	Namespace string `json:"namespace"`

	// name of the referent.
	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
	// +required
	Name string `json:"name"`

	// fieldPath is the path to the field of the object which references the template.
	// +required
	FieldPath string `json:"fieldPath"`
}

HolderReference represents a reference to an object which holds a template.

func (*HolderReference) DeepCopy

func (in *HolderReference) DeepCopy() *HolderReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HolderReference.

func (*HolderReference) DeepCopyInto

func (in *HolderReference) DeepCopyInto(out *HolderReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineBootstrapBuiltins

type MachineBootstrapBuiltins struct {
	// configRef is the value of the .spec.template.spec.bootstrap.configRef field of the MachineDeployment.
	// +optional
	ConfigRef *MachineBootstrapConfigRefBuiltins `json:"configRef,omitempty"`
}

MachineBootstrapBuiltins is the value of the .spec.template.spec.bootstrap field of the MachineDeployment or MachinePool.

func (*MachineBootstrapBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineBootstrapBuiltins.

func (*MachineBootstrapBuiltins) DeepCopyInto

func (in *MachineBootstrapBuiltins) DeepCopyInto(out *MachineBootstrapBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineBootstrapConfigRefBuiltins

type MachineBootstrapConfigRefBuiltins struct {
	// name of the bootstrap.configRef.
	// +optional
	Name string `json:"name,omitempty"`
}

MachineBootstrapConfigRefBuiltins is the value of the .spec.template.spec.bootstrap.configRef field of the MachineDeployment or MachinePool.

func (*MachineBootstrapConfigRefBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineBootstrapConfigRefBuiltins.

func (*MachineBootstrapConfigRefBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineDeploymentBuiltins

type MachineDeploymentBuiltins struct {
	// version is the Kubernetes version of the MachineDeployment,
	// to which the current template belongs to.
	// NOTE: Please note that this version is the version we are currently reconciling towards.
	// It can differ from the current version of the MachineDeployment machines while an upgrade process is
	// being orchestrated.
	// +optional
	Version string `json:"version,omitempty"`

	// metadata is the metadata set on the MachineDeployment.
	// +optional
	Metadata *clusterv1beta1.ObjectMeta `json:"metadata,omitempty"`

	// class is the class name of the MachineDeployment,
	// to which the current template belongs to.
	// +optional
	Class string `json:"class,omitempty"`

	// name is the name of the MachineDeployment,
	// to which the current template belongs to.
	// +optional
	Name string `json:"name,omitempty"`

	// topologyName is the topology name of the MachineDeployment,
	// to which the current template belongs to.
	// +optional
	TopologyName string `json:"topologyName,omitempty"`

	// replicas is the value of the replicas field of the MachineDeployment,
	// to which the current template belongs to.
	// +optional
	Replicas *int64 `json:"replicas,omitempty"`

	// bootstrap is the value of the .spec.template.spec.bootstrap field of the MachineDeployment.
	// +optional
	Bootstrap *MachineBootstrapBuiltins `json:"bootstrap,omitempty"`

	// infrastructureRef is the value of the .spec.template.spec.infrastructureRef field of the MachineDeployment.
	// +optional
	InfrastructureRef *MachineInfrastructureRefBuiltins `json:"infrastructureRef,omitempty"`
}

MachineDeploymentBuiltins represents builtin MachineDeployment variables. NOTE: These variables are only set for templates belonging to a MachineDeployment.

func (*MachineDeploymentBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeploymentBuiltins.

func (*MachineDeploymentBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineInfrastructureRefBuiltins

type MachineInfrastructureRefBuiltins struct {
	// name of the infrastructureRef.
	// +optional
	Name string `json:"name,omitempty"`
}

MachineInfrastructureRefBuiltins is the value of the .spec.template.spec.infrastructureRef field of the MachineDeployment or MachinePool.

func (*MachineInfrastructureRefBuiltins) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineInfrastructureRefBuiltins.

func (*MachineInfrastructureRefBuiltins) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachinePoolBuiltins

type MachinePoolBuiltins struct {
	// version is the Kubernetes version of the MachinePool,
	// to which the current template belongs to.
	// NOTE: Please note that this version is the version we are currently reconciling towards.
	// It can differ from the current version of the MachinePool machines while an upgrade process is
	// being orchestrated.
	// +optional
	Version string `json:"version,omitempty"`

	// metadata is the metadata set on the MachinePool.
	// +optional
	Metadata *clusterv1beta1.ObjectMeta `json:"metadata,omitempty"`

	// class is the class name of the MachinePool,
	// to which the current template belongs to.
	// +optional
	Class string `json:"class,omitempty"`

	// name is the name of the MachinePool,
	// to which the current template belongs to.
	// +optional
	Name string `json:"name,omitempty"`

	// topologyName is the topology name of the MachinePool,
	// to which the current template belongs to.
	// +optional
	TopologyName string `json:"topologyName,omitempty"`

	// replicas is the value of the replicas field of the MachinePool,
	// to which the current template belongs to.
	// +optional
	Replicas *int64 `json:"replicas,omitempty"`

	// bootstrap is the value of the .spec.template.spec.bootstrap field of the MachinePool.
	// +optional
	Bootstrap *MachineBootstrapBuiltins `json:"bootstrap,omitempty"`

	// infrastructureRef is the value of the .spec.template.spec.infrastructureRef field of the MachinePool.
	// +optional
	InfrastructureRef *MachineInfrastructureRefBuiltins `json:"infrastructureRef,omitempty"`
}

MachinePoolBuiltins represents builtin MachinePool variables. NOTE: These variables are only set for templates belonging to a MachinePool.

func (*MachinePoolBuiltins) DeepCopy

func (in *MachinePoolBuiltins) DeepCopy() *MachinePoolBuiltins

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachinePoolBuiltins.

func (*MachinePoolBuiltins) DeepCopyInto

func (in *MachinePoolBuiltins) DeepCopyInto(out *MachinePoolBuiltins)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Patch

type Patch struct {
	// patchType JSONPatch or JSONMergePatch.
	// +required
	PatchType PatchType `json:"patchType,omitempty"`

	// patch data for the target object.
	// +required
	Patch []byte `json:"patch,omitempty"`
}

Patch is a single patch (JSONPatch or JSONMergePatch) which can include multiple operations.

func (*Patch) DeepCopy

func (in *Patch) DeepCopy() *Patch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Patch.

func (*Patch) DeepCopyInto

func (in *Patch) DeepCopyInto(out *Patch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Patch) IsDefined

func (p *Patch) IsDefined() bool

IsDefined returns true if one of the fields of Patch is set.

type PatchType

type PatchType string

PatchType defines the supported patch types. +kubebuilder:validation:Enum=JSONPatch;JSONMergePatch

const (
	// JSONPatchType identifies a https://datatracker.ietf.org/doc/html/rfc6902 JSON patch.
	JSONPatchType PatchType = "JSONPatch"

	// JSONMergePatchType identifies a https://datatracker.ietf.org/doc/html/rfc7386 JSON merge patch.
	JSONMergePatchType PatchType = "JSONMergePatch"
)

type RequestObject

type RequestObject interface {
	runtime.Object
	GetSettings() map[string]string
	SetSettings(settings map[string]string)
}

RequestObject is a runtime.Object extended with methods to handle request-specific fields. +kubebuilder:object:generate=false

type ResponseObject

type ResponseObject interface {
	runtime.Object
	GetMessage() string
	GetStatus() ResponseStatus
	SetMessage(message string)
	SetStatus(status ResponseStatus)
}

ResponseObject is a runtime.Object extended with methods to handle response-specific fields. +kubebuilder:object:generate=false

type ResponseStatus

type ResponseStatus string

ResponseStatus represents the status of the hook response. +enum

const (
	// ResponseStatusSuccess represents a success response.
	ResponseStatusSuccess ResponseStatus = "Success"

	// ResponseStatusFailure represents a failure response.
	ResponseStatusFailure ResponseStatus = "Failure"
)

type RetryResponseObject

type RetryResponseObject interface {
	ResponseObject
	GetRetryAfterSeconds() int32
	SetRetryAfterSeconds(retryAfterSeconds int32)
}

RetryResponseObject is a ResponseObject which additionally defines the functionality for a response to signal a retry. +kubebuilder:object:generate=false

type UpdateMachineRequest

type UpdateMachineRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains fields common to all request types.
	CommonRequest `json:",inline"`

	// desired contains the desired state of the Machine and related objects.
	// +required
	Desired UpdateMachineRequestObjects `json:"desired,omitempty,omitzero"`
}

UpdateMachineRequest is the request of the UpdateMachine hook. +kubebuilder:object:root=true

func (*UpdateMachineRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateMachineRequest.

func (*UpdateMachineRequest) DeepCopyInto

func (in *UpdateMachineRequest) DeepCopyInto(out *UpdateMachineRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*UpdateMachineRequest) DeepCopyObject

func (in *UpdateMachineRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type UpdateMachineRequestObjects

type UpdateMachineRequestObjects struct {
	// machine is the full Machine object.
	// +required
	Machine clusterv1.Machine `json:"machine,omitempty,omitzero"`

	// infrastructureMachine is the infra Machine object.
	// +required
	InfrastructureMachine runtime.RawExtension `json:"infrastructureMachine,omitempty,omitzero"`

	// bootstrapConfig is the bootstrap config object.
	// +optional
	BootstrapConfig runtime.RawExtension `json:"bootstrapConfig,omitempty,omitzero"`
}

UpdateMachineRequestObjects groups objects for UpdateMachineRequest.

func (*UpdateMachineRequestObjects) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateMachineRequestObjects.

func (*UpdateMachineRequestObjects) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpdateMachineResponse

type UpdateMachineResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRetryResponse contains Status, Message and RetryAfterSeconds fields.
	CommonRetryResponse `json:",inline"`
}

UpdateMachineResponse is the response of the UpdateMachine hook. The status of the update operation is determined by the CommonRetryResponse fields: - Status=Success + RetryAfterSeconds > 0: update is in progress - Status=Success + RetryAfterSeconds = 0: update completed successfully - Status=Failure: update failed +kubebuilder:object:root=true

func (*UpdateMachineResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateMachineResponse.

func (*UpdateMachineResponse) DeepCopyInto

func (in *UpdateMachineResponse) DeepCopyInto(out *UpdateMachineResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*UpdateMachineResponse) DeepCopyObject

func (in *UpdateMachineResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type UpgradeStep

type UpgradeStep struct {
	// version is the Kubernetes version for this upgrade step.
	// +required
	// +kubebuilder:validation:MinLength=1
	Version string `json:"version,omitempty"`
}

UpgradeStep represents a single version upgrade step.

func (*UpgradeStep) DeepCopy

func (in *UpgradeStep) DeepCopy() *UpgradeStep

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeStep.

func (*UpgradeStep) DeepCopyInto

func (in *UpgradeStep) DeepCopyInto(out *UpgradeStep)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeStepInfo

type UpgradeStepInfo struct {
	// version is the Kubernetes version for this upgrade step.
	// +required
	// +kubebuilder:validation:MinLength=1
	Version string `json:"version,omitempty"`
}

UpgradeStepInfo provide info about a single version upgrade step.

func (*UpgradeStepInfo) DeepCopy

func (in *UpgradeStepInfo) DeepCopy() *UpgradeStepInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeStepInfo.

func (*UpgradeStepInfo) DeepCopyInto

func (in *UpgradeStepInfo) DeepCopyInto(out *UpgradeStepInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ValidateTopologyRequest

type ValidateTopologyRequest struct {
	metav1.TypeMeta `json:",inline"`

	// CommonRequest contains Settings field common to all request types.
	CommonRequest `json:",inline"`

	// variables are global variables for all templates.
	// +optional
	Variables []Variable `json:"variables,omitempty"`

	// items is the list of templates to validate.
	// +required
	Items []*ValidateTopologyRequestItem `json:"items"`
}

ValidateTopologyRequest is the request of the ValidateTopology hook. +kubebuilder:object:root=true

func (*ValidateTopologyRequest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidateTopologyRequest.

func (*ValidateTopologyRequest) DeepCopyInto

func (in *ValidateTopologyRequest) DeepCopyInto(out *ValidateTopologyRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ValidateTopologyRequest) DeepCopyObject

func (in *ValidateTopologyRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ValidateTopologyRequestItem

type ValidateTopologyRequestItem struct {
	// holderReference is a reference to the object where the template is used.
	// +required
	HolderReference HolderReference `json:"holderReference"`

	// object contains the template as a raw object.
	// +required
	Object runtime.RawExtension `json:"object"`

	// variables are variables specific for the current template.
	// For example some builtin variables like MachineDeployment replicas and version are context-sensitive
	// and thus are only added to templates for MachineDeployments and with values which correspond to the
	// current MachineDeployment.
	// +optional
	Variables []Variable `json:"variables,omitempty"`
}

ValidateTopologyRequestItem represents a template to validate.

func (*ValidateTopologyRequestItem) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidateTopologyRequestItem.

func (*ValidateTopologyRequestItem) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ValidateTopologyResponse

type ValidateTopologyResponse struct {
	metav1.TypeMeta `json:",inline"`

	// CommonResponse contains Status and Message fields common to all response types.
	CommonResponse `json:",inline"`
}

ValidateTopologyResponse is the response of the ValidateTopology hook. +kubebuilder:object:root=true

func (*ValidateTopologyResponse) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidateTopologyResponse.

func (*ValidateTopologyResponse) DeepCopyInto

func (in *ValidateTopologyResponse) DeepCopyInto(out *ValidateTopologyResponse)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ValidateTopologyResponse) DeepCopyObject

func (in *ValidateTopologyResponse) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type Variable

type Variable struct {
	// name of the variable.
	// +required
	Name string `json:"name"`

	// value of the variable.
	// +required
	Value apiextensionsv1.JSON `json:"value"`
}

Variable represents a variable value.

func (*Variable) DeepCopy

func (in *Variable) DeepCopy() *Variable

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Variable.

func (*Variable) DeepCopyInto

func (in *Variable) DeepCopyInto(out *Variable)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL