v1alpha1

package
v0.0.0-...-83b10f0 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2024 License: Apache-2.0 Imports: 11 Imported by: 4

Documentation

Overview

Package v1alpha1 contains infrastructure resources of nine (IaaS). +kubebuilder:object:generate=true +groupName=infrastructure.nine.ch +versionName=v1alpha1

Index

Constants

View Source
const (
	Group   = "infrastructure.nine.ch"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	KedaKind                          = reflect.TypeOf(Keda{}).Name()
	KedaGroupKind                     = schema.GroupKind{Group: Group, Kind: KedaKind}.String()
	KedaKindAPIVersion                = KedaKind + "." + SchemeGroupVersion.String()
	KedaGroupVersionKind              = SchemeGroupVersion.WithKind(KedaKind)
	KubernetesClusterKind             = reflect.TypeOf(KubernetesCluster{}).Name()
	KubernetesClusterGroupKind        = schema.GroupKind{Group: Group, Kind: KubernetesClusterKind}.String()
	KubernetesClusterKindAPIVersion   = KubernetesClusterKind + "." + SchemeGroupVersion.String()
	KubernetesClusterGroupVersionKind = SchemeGroupVersion.WithKind(KubernetesClusterKind)
)

Functions

This section is empty.

Types

type ClusterObservation

type ClusterObservation struct {
	// APIEndpoint is the URL under which the Kubernetes API is reachable at.
	APIEndpoint string `json:"apiEndpoint,omitempty"`
	// APICACert is the base64 encoded ca certificate of the kube-apiserver
	APICACert string `json:"apiCACert,omitempty"`
	// OIDCClientID is the client ID for the OIDC login flow to this cluster.
	OIDCClientID string `json:"oidcClientID,omitempty"`
	// OIDCIssuerURL is the issuer URL for the OIDC login flow to this cluster.
	OIDCIssuerURL string `json:"oidcIssuerURL,omitempty"`
	// NodePools lists the name of the node pools plus their associated status.
	NodePools map[string]NodePoolStatus `json:"nodePools,omitempty"`
	// Status of all our child resources.
	meta.ChildResourceStatus `json:",inline"`
}

ClusterObservation are the observable fields of a Cluster.

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

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

func (*ClusterObservation) DeepCopyInto

func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)

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

type Keda

type Keda struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KedaSpec   `json:"spec"`
	Status            KedaStatus `json:"status,omitempty"`
}

Keda deploys Keda to a KubernetesCluster. +kubebuilder:subresource:status +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Namespaced,path=kedas +kubebuilder:object:root=true

func (*Keda) DeepCopy

func (in *Keda) DeepCopy() *Keda

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

func (*Keda) DeepCopyInto

func (in *Keda) DeepCopyInto(out *Keda)

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

func (*Keda) DeepCopyObject

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

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

func (*Keda) GetCondition

func (mg *Keda) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Keda.

func (*Keda) GetDeletionPolicy

func (mg *Keda) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Keda.

func (*Keda) GetManagementPolicies

func (mg *Keda) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Keda.

func (*Keda) GetProviderConfigReference

func (mg *Keda) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Keda.

func (*Keda) GetPublishConnectionDetailsTo

func (mg *Keda) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Keda.

func (*Keda) GetWriteConnectionSecretToReference

func (mg *Keda) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Keda.

func (*Keda) SetConditions

func (mg *Keda) SetConditions(c ...xpv1.Condition)

SetConditions of this Keda.

func (*Keda) SetDeletionPolicy

func (mg *Keda) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Keda.

func (*Keda) SetManagementPolicies

func (mg *Keda) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Keda.

func (*Keda) SetProviderConfigReference

func (mg *Keda) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Keda.

func (*Keda) SetPublishConnectionDetailsTo

func (mg *Keda) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Keda.

func (*Keda) SetWriteConnectionSecretToReference

func (mg *Keda) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Keda.

type KedaList

type KedaList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Keda `json:"items"`
}

KedaList contains a list of Keda instances +kubebuilder:object:root=true

func (*KedaList) DeepCopy

func (in *KedaList) DeepCopy() *KedaList

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

func (*KedaList) DeepCopyInto

func (in *KedaList) DeepCopyInto(out *KedaList)

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

func (*KedaList) DeepCopyObject

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

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

func (*KedaList) GetItems

func (l *KedaList) GetItems() []resource.Managed

GetItems of this KedaList.

type KedaObservation

type KedaObservation struct {
	// Status of all our child resources.
	meta.ChildResourceStatus `json:",inline"`
	meta.ReferenceStatus     `json:",inline"`
}

KedaObservation are the observable fields of a Keda instance.

func (*KedaObservation) DeepCopy

func (in *KedaObservation) DeepCopy() *KedaObservation

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

func (*KedaObservation) DeepCopyInto

func (in *KedaObservation) DeepCopyInto(out *KedaObservation)

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

type KedaParameters

type KedaParameters struct {
	// Cluster is the cluster where the keda should be deployed
	// to.
	Cluster meta.LocalReference `json:"cluster"`
}

KedaParameters are the configurable fields of a Keda instance.

func (*KedaParameters) DeepCopy

func (in *KedaParameters) DeepCopy() *KedaParameters

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

func (*KedaParameters) DeepCopyInto

func (in *KedaParameters) DeepCopyInto(out *KedaParameters)

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

type KedaSpec

type KedaSpec struct {
	runtimev1.ResourceSpec `json:",inline"`
	ForProvider            KedaParameters `json:"forProvider"`
}

A KedaSpec defines the desired state of a Keda instance.

func (*KedaSpec) DeepCopy

func (in *KedaSpec) DeepCopy() *KedaSpec

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

func (*KedaSpec) DeepCopyInto

func (in *KedaSpec) DeepCopyInto(out *KedaSpec)

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

type KedaStatus

type KedaStatus struct {
	runtimev1.ResourceStatus `json:",inline"`
	AtProvider               KedaObservation `json:"atProvider"`
}

A KedaStatus represents the observed state of a Keda instance.

func (*KedaStatus) DeepCopy

func (in *KedaStatus) DeepCopy() *KedaStatus

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

func (*KedaStatus) DeepCopyInto

func (in *KedaStatus) DeepCopyInto(out *KedaStatus)

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

type KubernetesCluster

type KubernetesCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KubernetesClusterSpec   `json:"spec"`
	Status            KubernetesClusterStatus `json:"status,omitempty"`
}

KubernetesCluster is a fully managed Kubernetes cluster. +kubebuilder:subresource:status +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Namespaced,shortName=kc +kubebuilder:object:root=true

func (*KubernetesCluster) DeepCopy

func (in *KubernetesCluster) DeepCopy() *KubernetesCluster

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

func (*KubernetesCluster) DeepCopyInto

func (in *KubernetesCluster) DeepCopyInto(out *KubernetesCluster)

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

func (*KubernetesCluster) DeepCopyObject

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

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

func (*KubernetesCluster) GetCondition

func (mg *KubernetesCluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this KubernetesCluster.

func (*KubernetesCluster) GetDeletionPolicy

func (mg *KubernetesCluster) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this KubernetesCluster.

func (*KubernetesCluster) GetManagementPolicies

func (mg *KubernetesCluster) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this KubernetesCluster.

func (*KubernetesCluster) GetProviderConfigReference

func (mg *KubernetesCluster) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this KubernetesCluster.

func (*KubernetesCluster) GetPublishConnectionDetailsTo

func (mg *KubernetesCluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this KubernetesCluster.

func (*KubernetesCluster) GetWriteConnectionSecretToReference

func (mg *KubernetesCluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this KubernetesCluster.

func (*KubernetesCluster) SetConditions

func (mg *KubernetesCluster) SetConditions(c ...xpv1.Condition)

SetConditions of this KubernetesCluster.

func (*KubernetesCluster) SetDeletionPolicy

func (mg *KubernetesCluster) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this KubernetesCluster.

func (*KubernetesCluster) SetManagementPolicies

func (mg *KubernetesCluster) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this KubernetesCluster.

func (*KubernetesCluster) SetProviderConfigReference

func (mg *KubernetesCluster) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this KubernetesCluster.

func (*KubernetesCluster) SetPublishConnectionDetailsTo

func (mg *KubernetesCluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this KubernetesCluster.

func (*KubernetesCluster) SetWriteConnectionSecretToReference

func (mg *KubernetesCluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this KubernetesCluster.

type KubernetesClusterList

type KubernetesClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []KubernetesCluster `json:"items"`
}

KubernetesClusterList contains a list of KubernetesClusters. +kubebuilder:object:root=true

func (*KubernetesClusterList) DeepCopy

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

func (*KubernetesClusterList) DeepCopyInto

func (in *KubernetesClusterList) DeepCopyInto(out *KubernetesClusterList)

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

func (*KubernetesClusterList) DeepCopyObject

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

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

func (*KubernetesClusterList) GetItems

func (l *KubernetesClusterList) GetItems() []resource.Managed

GetItems of this KubernetesClusterList.

type KubernetesClusterObservation

type KubernetesClusterObservation struct {
	ClusterObservation `json:",inline"`
	// KubernetesVersion represents the version of Kubernetes that this cluster
	// is running at.
	KubernetesVersion string `json:"kubernetesVersion,omitempty"`
	// VCluster exposes vcluster specific status fields.
	// +optional
	VCluster *VClusterSpecificStatus `json:"vcluster,omitempty"`
}

KubernetesClusterObservation are the observable fields of a KubernetesCluster.

func (*KubernetesClusterObservation) DeepCopy

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

func (*KubernetesClusterObservation) DeepCopyInto

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

type KubernetesClusterParameters

type KubernetesClusterParameters struct {
	// Location of the KubernetesCluster. Note that Clusters are currently
	// only available in the location nine-es34.
	Location meta.LocationName `json:"location"`
	// NKE represents a KubernetesCluster in Nine's datacentres.
	// +optional
	NKE *NKEClusterSettings `json:"nke,omitempty"`
	// VCluster is a virtual KubernetesCluster running on top of NKE.
	// Experimental and should only be used for development and testing.
	// +optional
	VCluster *VClusterSettings `json:"vcluster,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	NodePools []NodePool `json:"nodePools"`
	// AdditionalBackupSchedules allows custom backup schedules to be setup.
	// The daily full cluster backup won't be affected by this.
	// +kubebuilder:validation:MaxItems:=3
	// +optional
	AdditionalBackupSchedules []backup.VeleroSchedule `json:"additionalBackupSchedules,omitempty"`
	// ScrapeConfigurations allows to overwrite which metrics of this cluster are scraped
	// by certain Prometheus instances
	// +optional
	ScrapeConfigurations *KubernetesClusterScrapeConfiguration `json:"scrapeConfiguration,omitempty"`
}

KubernetesClusterParameters are the configurable fields of a KubernetesCluster.

func (*KubernetesClusterParameters) DeepCopy

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

func (*KubernetesClusterParameters) DeepCopyInto

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

type KubernetesClusterScrapeConfiguration

type KubernetesClusterScrapeConfiguration struct {
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	NodeExporter []meta.ScrapeConfig `json:"nodeExporter,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	KubeStateMetrics []meta.ScrapeConfig `json:"kubeStateMetrics,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	KubeletCAdvisor []meta.ScrapeConfig `json:"kubeletCAdvisor,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	Kubelet []meta.ScrapeConfig `json:"kubelet,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	Velero []meta.ScrapeConfig `json:"velero,omitempty"`
	// +listType:="map"
	// +listMapKey:="name"
	// +optional
	CertManager []meta.ScrapeConfig `json:"certManager,omitempty"`
}

func (*KubernetesClusterScrapeConfiguration) DeepCopy

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

func (*KubernetesClusterScrapeConfiguration) DeepCopyInto

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

type KubernetesClusterSpec

type KubernetesClusterSpec struct {
	runtimev1.ResourceSpec `json:",inline"`
	ForProvider            KubernetesClusterParameters `json:"forProvider"`
}

A KubernetesClusterSpec defines the desired state of a KubernetesCluster.

func (*KubernetesClusterSpec) DeepCopy

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

func (*KubernetesClusterSpec) DeepCopyInto

func (in *KubernetesClusterSpec) DeepCopyInto(out *KubernetesClusterSpec)

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

type KubernetesClusterStatus

type KubernetesClusterStatus struct {
	runtimev1.ResourceStatus `json:",inline"`
	AtProvider               KubernetesClusterObservation `json:"atProvider,omitempty"`
}

A KubernetesClusterStatus represents the observed state of a KubernetesCluster.

func (*KubernetesClusterStatus) DeepCopy

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

func (*KubernetesClusterStatus) DeepCopyInto

func (in *KubernetesClusterStatus) DeepCopyInto(out *KubernetesClusterStatus)

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

type MachineType

type MachineType string

MachineType is a name for a particular machine sizing. +nine:public:definition

const (
	// MachineTypeNineStandard1 is a VM running on Nine Infrastructure with:
	// 1 CPU Cores
	// 4GB RAM
	MachineTypeNineStandard1 MachineType = "nine-standard-1"
	// MachineTypeNineStandard2 is a VM running on Nine Infrastructure with:
	// 2 CPU Cores
	// 8GB RAM
	MachineTypeNineStandard2 MachineType = "nine-standard-2"
	// MachineTypeNineStandard4 is a VM running on Nine Infrastructure with:
	// 4 CPU Cores
	// 16GB RAM
	MachineTypeNineStandard4 MachineType = "nine-standard-4"
	// MachineTypeHighMem2 is a VM running on Nine Infrastructure with:
	// 2 CPU Cores
	// 16GB RAM
	MachineTypeNineHighMem2 MachineType = "nine-highmem-2"
	// MachineTypeHighMem4 is a VM running on Nine Infrastructure with:
	// 4 CPU Cores
	// 32GB RAM
	MachineTypeNineHighMem4 MachineType = "nine-highmem-4"
	// MachineTypeHighCPU2 is a VM running on Nine Infrastructure with:
	// 2 CPU Cores
	// 4GB RAM
	MachineTypeNineHighCPU2 MachineType = "nine-highcpu-2"
	// MachineTypeHighCPU4 is a VM running on Nine Infrastructure with:
	// 4 CPU Cores
	// 8GB RAM
	MachineTypeNineHighCPU4 MachineType = "nine-highcpu-4"
	// MachineTypeHighCPU8 is a VM running on Nine Infrastructure with:
	// 8 CPU Cores
	// 16GB RAM
	MachineTypeNineHighCPU8 MachineType = "nine-highcpu-8"
	// MachineTypeHighCPU16 is a VM running on Nine Infrastructure with:
	// 16 CPU Cores
	// 32GB RAM
	MachineTypeNineHighCPU16 MachineType = "nine-highcpu-16"
)

type NKEClusterSettings

type NKEClusterSettings struct {
	// StaticEgress defines settings for the static egress feature
	// +optional
	StaticEgress StaticEgress `json:"staticEgress"`
}

NKEClusterSettings defines additional fields that a nine KubernetesCluster can have.

func (*NKEClusterSettings) DeepCopy

func (in *NKEClusterSettings) DeepCopy() *NKEClusterSettings

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

func (*NKEClusterSettings) DeepCopyInto

func (in *NKEClusterSettings) DeepCopyInto(out *NKEClusterSettings)

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

type NodePool

type NodePool struct {
	// Name of the node pool. Changing this results in a new rollout of all
	// nodes in the pool.
	Name string `json:"name"`
	// MinNodes describes the lower bound of nodes in this pool. If MinNodes
	// == MaxNodes, autoscaling is disabled.
	// +kubebuilder:validation:Minimum=0
	MinNodes int `json:"minNodes"`
	// MinNodes describes the upper bound of nodes in this pool. If MinNodes
	// == MaxNodes, autoscaling is disabled.
	// +kubebuilder:validation:Minimum=1
	MaxNodes int `json:"maxNodes"`
	// Labels specifies the node labels. Changing this results in a new
	// rollout of all nodes in the pool.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
	// Annotations specifies the node annotations. Changing this results in a
	// new rollout of all nodes in the pool.
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
	// Taints specifies the node taints. Changing this results in a new
	// rollout of all nodes in the pool.
	// +optional
	Taints []v1.Taint `json:"taints,omitempty"`
	// MachineType identifies the machine sizing. Changing this results in a
	// new rollout of all nodes in the pool.
	// +kubebuilder:validation:Enum=nine-standard-1;nine-standard-2;nine-standard-4;nine-highmem-2;nine-highmem-4;nine-highcpu-2;nine-highcpu-4;nine-highcpu-8;nine-highcpu-16
	MachineType MachineType `json:"machineType"`
	// DiskSize specifies the size of the disk for the nodes in this pool.
	// Changing this results in a new rollout of all nodes in the pool.
	// Allowed range is 20Gi - 100Gi.
	// +kubebuilder:default:="20Gi"
	// +optional
	DiskSize *resource.Quantity `json:"diskSize,omitempty"`
}

NodePool configures a pool of nodes which are added to the cluster.

func (*NodePool) DeepCopy

func (in *NodePool) DeepCopy() *NodePool

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

func (*NodePool) DeepCopyInto

func (in *NodePool) DeepCopyInto(out *NodePool)

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

type NodePoolStatus

type NodePoolStatus struct {
	// NumNodes describes the current number of nodes in the node pool.
	NumNodes int `json:"numNodes"`
	// MachineType shows the current machine type of the node pool.
	MachineType *MachineType `json:"machineType,omitempty"`
	// DiskSize shows the current disk size of the node pool.
	DiskSize *resource.Quantity `json:"diskSize,omitempty"`
}

func (*NodePoolStatus) DeepCopy

func (in *NodePoolStatus) DeepCopy() *NodePoolStatus

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

func (*NodePoolStatus) DeepCopyInto

func (in *NodePoolStatus) DeepCopyInto(out *NodePoolStatus)

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

type StaticEgress

type StaticEgress struct {
	// Enabled defines if the static egress feature should be enabled or
	// disabled
	// +optional
	// +kubebuilder:default:=false
	Enabled bool `json:"enabled"`
}

func (*StaticEgress) DeepCopy

func (in *StaticEgress) DeepCopy() *StaticEgress

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

func (*StaticEgress) DeepCopyInto

func (in *StaticEgress) DeepCopyInto(out *StaticEgress)

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

type VClusterIngress

type VClusterIngress struct {
	// Host is the fully qualified hostname that points to the Ingress
	// Loadbalancer.
	Host string `json:"host"`
	// Class is the name of the IngressClass that can be referenced within an
	// Ingress resource.
	Class string `json:"class"`
}

func (*VClusterIngress) DeepCopy

func (in *VClusterIngress) DeepCopy() *VClusterIngress

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

func (*VClusterIngress) DeepCopyInto

func (in *VClusterIngress) DeepCopyInto(out *VClusterIngress)

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

type VClusterSettings

type VClusterSettings struct {
	// Version specifies the Kubernetes version that will be used for this
	// cluster, e.g. "1.26". The patch version cannot be specified and the
	// latest supported one will be used.
	// +optional
	// +kubebuilder:default:="1.28"
	// +kubebuilder:validation:Enum:="1.25";"1.26";"1.27";"1.28";"1.29"
	// +kubebuilder:validation:XValidation:message="downgrade is not allowed",rule="double(self) >= double(oldSelf)"
	// +kubebuilder:validation:XValidation:message="only one minor upgrade is allowed",rule="double(self) - double(oldSelf) < 0.02"
	Version string `json:"version,omitempty"`
	// CertManager enables cert-manager on the vcluster. Currently just
	// Certificate resources are supported.
	// +optional
	CertManager bool `json:"certManager,omitempty"`
}

VClusterSettings defines additional fields that a nine KubernetesCluster based on VCluster can have.

func (*VClusterSettings) DeepCopy

func (in *VClusterSettings) DeepCopy() *VClusterSettings

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

func (*VClusterSettings) DeepCopyInto

func (in *VClusterSettings) DeepCopyInto(out *VClusterSettings)

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

type VClusterSpecificStatus

type VClusterSpecificStatus struct {
	// DefaultIngress that Ingress objects within the vcluster can use.
	DefaultIngress VClusterIngress `json:"defaultIngress"`
}

func (*VClusterSpecificStatus) DeepCopy

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

func (*VClusterSpecificStatus) DeepCopyInto

func (in *VClusterSpecificStatus) DeepCopyInto(out *VClusterSpecificStatus)

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