v1alpha1

package
v1.11.3 Latest Latest
Warning

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

Go to latest
Published: Nov 3, 2025 License: Apache-2.0 Imports: 9 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 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 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 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 the upgrade.
	// +required
	KubernetesVersion string `json:"kubernetesVersion"`
}

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 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"`
}

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 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 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 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 PatchType

type PatchType string

PatchType defines the supported patch types. +enum

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 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