v1

package
v2.20.2 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+groupName=kubermatic.k8s.io

Index

Constants

View Source
const (
	// AddonResourceName represents "Resource" defined in Kubernetes.
	AddonResourceName = "addons"

	// AddonKindName represents "Kind" defined in Kubernetes.
	AddonKindName = "Addon"

	AddonResourcesCreated AddonConditionType = "AddonResourcesCreatedSuccessfully"
)
View Source
const (
	// AlertmanagerResourceName represents "Resource" defined in Kubernetes.
	AlertmanagerResourceName = "alertmanagers"

	// AlertmanagerKindName represents "Kind" defined in Kubernetes.
	AlertmanagerKindName = "Alertmanager"
)
View Source
const (
	// AllowedRegistryResourceName represents "Resource" defined in Kubernetes.
	AllowedRegistryResourceName = "allowedregistry"

	// AllowedRegistryKindName represents "Kind" defined in Kubernetes.
	AllowedRegistryKindName = "AllowedRegistry"
)
View Source
const (
	// ClusterResourceName represents "Resource" defined in Kubernetes.
	ClusterResourceName = "clusters"

	// ClusterKindName represents "Kind" defined in Kubernetes.
	ClusterKindName = "Cluster"

	// AnnotationNameClusterAutoscalerEnabled is the name of the annotation that is being
	// used to determine if the cluster-autoscaler is enabled for this cluster. It is
	// enabled when this Annotation is set with any value.
	AnnotationNameClusterAutoscalerEnabled = "kubermatic.io/cluster-autoscaler-enabled"

	// CredentialPrefix is the prefix used for the secrets containing cloud provider crednentials.
	CredentialPrefix = "credential"

	// ForceRestartAnnotation is key of the annotation used to restart machine deployments.
	ForceRestartAnnotation = "forceRestart"
)
View Source
const (
	CCMMigrationNeededAnnotation = "ccm-migration.k8c.io/migration-needed"
	CSIMigrationNeededAnnotation = "csi-migration.k8c.io/migration-needed"
)
View Source
const (
	WorkerNameLabelKey   = "worker-name"
	ProjectIDLabelKey    = "project-id"
	UpdatedByVPALabelKey = "updated-by-vpa"

	DefaultEtcdClusterSize = 3
	MinEtcdClusterSize     = 3
	MaxEtcdClusterSize     = 9
)
View Source
const (
	AzureStandardLBSKU = LBSKU("standard")
	AzureBasicLBSKU    = LBSKU("basic")
)
View Source
const (
	// ClusterFeatureExternalCloudProvider describes the external cloud provider feature. It is
	// only supported on a limited set of providers for a specific set of Kube versions. It must
	// not be set if its not supported.
	ClusterFeatureExternalCloudProvider = "externalCloudProvider"

	// ClusterFeatureCCMClusterName sets the cluster-name flag on the external CCM deployment.
	// The cluster-name flag is often used for naming cloud resources, such as load balancers.
	ClusterFeatureCCMClusterName = "ccmClusterName"

	// ClusterFeatureEtcdLauncher enables features related to the experimental etcd-launcher. This includes user-cluster
	// etcd scaling, automatic volume recovery and new backup/restore contorllers.
	ClusterFeatureEtcdLauncher = "etcdLauncher"

	// ApiserverNetworkPolicy enables the deployment of network policies that
	// restrict the egress traffic from Apiserver pods.
	ApiserverNetworkPolicy = "apiserverNetworkPolicy"

	// KubeSystemNetworkPolicies enables the deployment of network policies to kube-system namespace that
	// restrict traffic from all pods in the namespace.
	KubeSystemNetworkPolicies = "kubeSystemNetworkPolicies"
)
View Source
const (
	// ClusterTemplateInstanceResourceName represents "Resource" defined in Kubernetes.
	ClusterTemplateInstanceResourceName = "clustertemplateinstances"

	// ClusterTemplateInstanceKindName represents "Kind" defined in Kubernetes.
	ClusterTemplateInstanceKindName = "ClusterTemplateInstance"
)
View Source
const (
	UserClusterTemplateScope    = "user"
	ProjectClusterTemplateScope = "project"
	GlobalClusterTemplateScope  = "global"
	SeedTemplateScope           = "seed"
)
View Source
const (
	ClusterTemplateScopeLabelKey             = "scope"
	ClusterTemplateUserAnnotationKey         = "user"
	ClusterTemplateProjectLabelKey           = "project-id"
	ClusterTemplateHumanReadableNameLabelKey = "name"
)
View Source
const (
	// ClusterTemplateResourceName represents "Resource" defined in Kubernetes.
	ClusterTemplateResourceName = "clustertemplates"

	// ClusterTemplateKindName represents "Kind" defined in Kubernetes.
	ClusterTemplateKindName = "ClusterTemplate"
)
View Source
const (

	// ConstraintResourceName represents "Resource" defined in Kubernetes.
	ConstraintResourceName = "constraints"

	// ConstraintKind represents "Kind" defined in Kubernetes.
	ConstraintKind = "Constraint"
)
View Source
const (

	// ConstraintTemplateResourceName represents "Resource" defined in Kubernetes.
	ConstraintTemplateResourceName = "constrainttemplates"

	// ConstraintTemplateKind represents "Kind" defined in Kubernetes.
	ConstraintTemplateKind = "ConstraintTemplate"
)
View Source
const (
	// EtcdBackupConfigResourceName represents "Resource" defined in Kubernetes.
	EtcdBackupConfigResourceName = "etcdbackupconfigs"

	// EtcdBackupConfigKindName represents "Kind" defined in Kubernetes.
	EtcdBackupConfigKindName = "EtcdBackupConfig"

	DefaultKeptBackupsCount = 20
	MaxKeptBackupsCount     = 50

	// BackupStatusPhase value indicating that the corresponding job has started.
	BackupStatusPhaseRunning = "Running"

	// BackupStatusPhase value indicating that the corresponding job has completed successfully.
	BackupStatusPhaseCompleted = "Completed"

	// BackupStatusPhase value indicating that the corresponding job has completed with an error.
	BackupStatusPhaseFailed = "Failed"
)
View Source
const (
	// EtcdRestoreResourceName represents "Resource" defined in Kubernetes.
	EtcdRestoreResourceName = "etcdrestores"

	// EtcdRestoreKindName represents "Kind" defined in Kubernetes.
	EtcdRestoreKindName = "EtcdRestore"

	// EtcdRestorePhaseStarted value indicating that the restore has started.
	EtcdRestorePhaseStarted = "Started"

	// EtcdRestorePhaseStsRebuilding value indicating that the old Etcd statefulset has been deleted and is now rebuilding.
	EtcdRestorePhaseStsRebuilding = "StsRebuilding"

	// EtcdRestorePhaseCompleted value indicating that the old Etcd statefulset has completed successfully.
	EtcdRestorePhaseCompleted = "Completed"
)
View Source
const (

	// ExternalClusterResourceName represents "Resource" defined in Kubernetes.
	ExternalClusterResourceName = "externalclusters"

	// ExternalClusterKind represents "Kind" defined in Kubernetes.
	ExternalClusterKind = "ExternalCluster"
)
View Source
const (
	// MLAAdminSettingResourceName represents "Resource" defined in Kubernetes.
	MLAAdminSettingResourceName = "mlaadminsettings"

	// MLAAdminSettingKindName represents "Kind" defined in Kubernetes.
	MLAAdminSettingKindName = "MLAAdminSetting"
)
View Source
const (
	// ProjectActive means the project is available for use in the system.
	ProjectActive string = "Active"

	// ProjectInactive means the project is inactive and requires further initialization.
	ProjectInactive string = "Inactive"

	// ProjectTerminating means the project is undergoing graceful termination.
	ProjectTerminating string = "Terminating"
)

These are the valid phases of a project.

View Source
const (
	// ProjectResourceName represents "Resource" defined in Kubernetes.
	ProjectResourceName = "projects"

	// ProjectKindName represents "Kind" defined in Kubernetes.
	ProjectKindName = "Project"
)
View Source
const (
	// RuleGroupResourceName represents "Resource" defined in Kubernetes.
	RuleGroupResourceName = "rulegroups"

	// RuleGroupKindName represents "Kind" defined in Kubernetes.
	RuleGroupKindName = "RuleGroup"
)
View Source
const (
	// SSHKeyResourceName represents "Resource" defined in Kubernetes.
	SSHKeyResourceName = "usersshkeies"

	// SSHKeyKind represents "Kind" defined in Kubernetes.
	SSHKeyKind = "UserSSHKey"
)
View Source
const (
	// UserResourceName represents "Resource" defined in Kubernetes.
	UserResourceName = "users"

	// UserKindName represents "Kind" defined in Kubernetes.
	UserKindName = "User"
)
View Source
const (

	// UserProjectBindingResourceName represents "Resource" defined in Kubernetes.
	UserProjectBindingResourceName = "userprojectbindings"

	// UserProjectBindingKind represents "Kind" defined in Kubernetes.
	UserProjectBindingKind = "UserProjectBinding"
)
View Source
const DefaultNodeAccessNetwork = "10.254.0.0/16"

DefaultNodeAccessNetwork is the default CIDR used for the VPNs transit network through which we route the ControlPlane -> Node/Pod traffic.

View Source
const GlobalSettingsName = "globalsettings"
View Source
const GroupName = "kubermatic.k8s.io"

GroupName is the group name use in this package.

View Source
const GroupVersion = "v1"

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme
)

AllExposeStrategies is a set containing all the ExposeStrategy.

ProtectedClusterLabels is a set of labels that must not be set by users on clusters, as they are security relevant.

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion}

SchemeGroupVersion is group version used to register these objects.

Functions

func IsProviderSupported added in v2.16.3

func IsProviderSupported(name string) bool

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource.

Types

type AKS added in v2.19.0

type AKS struct {
	ProviderPreset `json:",inline"`

	TenantID       string `json:"tenantId"`
	SubscriptionID string `json:"subscriptionId"`
	ClientID       string `json:"clientId"`
	ClientSecret   string `json:"clientSecret"`
}

func (*AKS) DeepCopy added in v2.19.0

func (in *AKS) DeepCopy() *AKS

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

func (*AKS) DeepCopyInto added in v2.19.0

func (in *AKS) DeepCopyInto(out *AKS)

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

func (AKS) IsValid added in v2.19.0

func (s AKS) IsValid() bool

type APIServerSettings

type APIServerSettings struct {
	DeploymentSettings `json:",inline"`

	EndpointReconcilingDisabled *bool  `json:"endpointReconcilingDisabled,omitempty"`
	NodePortRange               string `json:"nodePortRange,omitempty"`
}

func (*APIServerSettings) DeepCopy

func (in *APIServerSettings) DeepCopy() *APIServerSettings

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

func (*APIServerSettings) DeepCopyInto

func (in *APIServerSettings) DeepCopyInto(out *APIServerSettings)

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

type AWS

type AWS struct {
	ProviderPreset `json:",inline"`

	AccessKeyID     string `json:"accessKeyId"`
	SecretAccessKey string `json:"secretAccessKey"`

	AssumeRoleARN        string `json:"assumeRoleARN"`
	AssumeRoleExternalID string `json:"assumeRoleExternalID,omitempty"`

	VPCID               string `json:"vpcId,omitempty"`
	RouteTableID        string `json:"routeTableId,omitempty"`
	InstanceProfileName string `json:"instanceProfileName,omitempty"`
	SecurityGroupID     string `json:"securityGroupID,omitempty"`
	ControlPlaneRoleARN string `json:"roleARN,omitempty"`
}

func (*AWS) DeepCopy

func (in *AWS) DeepCopy() *AWS

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

func (*AWS) DeepCopyInto

func (in *AWS) DeepCopyInto(out *AWS)

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

func (AWS) IsValid added in v2.16.3

func (s AWS) IsValid() bool

type AWSCloudSpec

type AWSCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	AccessKeyID          string `json:"accessKeyId,omitempty"`
	SecretAccessKey      string `json:"secretAccessKey,omitempty"`
	AssumeRoleARN        string `json:"assumeRoleARN,omitempty"`
	AssumeRoleExternalID string `json:"assumeRoleExternalID,omitempty"`
	VPCID                string `json:"vpcId"`
	// The IAM role, the control plane will use. The control plane will perform an assume-role
	ControlPlaneRoleARN string `json:"roleARN"`
	RouteTableID        string `json:"routeTableId"`
	InstanceProfileName string `json:"instanceProfileName"`
	SecurityGroupID     string `json:"securityGroupID"`
	// NodePortsAllowedIPRange is the range of addresses allowed to access the cluster nodeports.
	// If not specified, the default value is 0.0.0.0/0, i.e., no restriction.
	NodePortsAllowedIPRange string `json:"nodePortsAllowedIPRange,omitempty"`

	// DEPRECATED. Don't care for the role name. We only require the ControlPlaneRoleARN to be set so the control plane
	// can perform the assume-role.
	// We keep it for backwards compatibility (We use this name for cleanup purpose).
	RoleName string `json:"roleName,omitempty"`
}

AWSCloudSpec specifies access data to Amazon Web Services.

func (*AWSCloudSpec) DeepCopy

func (in *AWSCloudSpec) DeepCopy() *AWSCloudSpec

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

func (*AWSCloudSpec) DeepCopyInto

func (in *AWSCloudSpec) DeepCopyInto(out *AWSCloudSpec)

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

type Addon

type Addon struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AddonSpec   `json:"spec"`
	Status AddonStatus `json:"status,omitempty"`
}

Addon specifies a add-on +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*Addon) DeepCopy

func (in *Addon) DeepCopy() *Addon

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

func (*Addon) DeepCopyInto

func (in *Addon) DeepCopyInto(out *Addon)

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

func (*Addon) DeepCopyObject

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

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

type AddonCondition

type AddonCondition struct {
	// Type of addon condition.
	Type AddonConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time we got an update on a given condition.
	// +optional
	LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty"`
	// Last time the condition transit from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

func (*AddonCondition) DeepCopy

func (in *AddonCondition) DeepCopy() *AddonCondition

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

func (*AddonCondition) DeepCopyInto

func (in *AddonCondition) DeepCopyInto(out *AddonCondition)

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

type AddonConditionType

type AddonConditionType string

type AddonConfig

type AddonConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec AddonConfigSpec `json:"spec"`
}

AddonConfig specifies addon configuration.

func (*AddonConfig) DeepCopy

func (in *AddonConfig) DeepCopy() *AddonConfig

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

func (*AddonConfig) DeepCopyInto

func (in *AddonConfig) DeepCopyInto(out *AddonConfig)

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

func (*AddonConfig) DeepCopyObject

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

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

type AddonConfigList

type AddonConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []AddonConfig `json:"items"`
}

AddonConfigList is a list of addon configs.

func (*AddonConfigList) DeepCopy

func (in *AddonConfigList) DeepCopy() *AddonConfigList

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

func (*AddonConfigList) DeepCopyInto

func (in *AddonConfigList) DeepCopyInto(out *AddonConfigList)

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

func (*AddonConfigList) DeepCopyObject

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

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

type AddonConfigSpec

type AddonConfigSpec struct {
	// ShortDescription of the configured addon that contains more detailed information about the addon,
	// it will be displayed in the addon details view in the UI
	ShortDescription string `json:"shortDescription,omitempty"`
	// Description of the configured addon, it will be displayed in the addon overview in the UI
	Description string `json:"description,omitempty"`
	Logo string `json:"logo,omitempty"`
	// LogoFormat contains logo format of the configured addon, i.e. svg+xml
	LogoFormat string `json:"logoFormat,omitempty"`
	// Controls that can be set for configured addon
	Controls []AddonFormControl `json:"formSpec,omitempty"`
}

AddonConfigSpec specifies configuration of addon.

func (*AddonConfigSpec) DeepCopy

func (in *AddonConfigSpec) DeepCopy() *AddonConfigSpec

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

func (*AddonConfigSpec) DeepCopyInto

func (in *AddonConfigSpec) DeepCopyInto(out *AddonConfigSpec)

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

type AddonFormControl

type AddonFormControl struct {
	// DisplayName is visible in the UI
	DisplayName string `json:"displayName,omitempty"`
	// InternalName is used internally to save in the addon object
	InternalName string `json:"internalName,omitempty"`
	// HelpText is visible in the UI next to the control
	HelpText string `json:"helpText,omitempty"`
	// Required indicates if the control has to be set
	Required bool `json:"required,omitempty"`
	// Type of displayed control
	Type string `json:"type,omitempty"`
}

AddonFormControl specifies addon form control.

func (*AddonFormControl) DeepCopy

func (in *AddonFormControl) DeepCopy() *AddonFormControl

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

func (*AddonFormControl) DeepCopyInto

func (in *AddonFormControl) DeepCopyInto(out *AddonFormControl)

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

type AddonList

type AddonList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Addon `json:"items"`
}

AddonList is a list of addons +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*AddonList) DeepCopy

func (in *AddonList) DeepCopy() *AddonList

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

func (*AddonList) DeepCopyInto

func (in *AddonList) DeepCopyInto(out *AddonList)

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

func (*AddonList) DeepCopyObject

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

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

type AddonSpec

type AddonSpec struct {
	// Name defines the name of the addon to install
	Name string `json:"name"`
	// Cluster is the reference to the cluster the addon should be installed in
	Cluster corev1.ObjectReference `json:"cluster"`
	// Variables is free form data to use for parsing the manifest templates
	Variables runtime.RawExtension `json:"variables,omitempty"`
	// RequiredResourceTypes allows to indicate that this addon needs some resource type before it
	// can be installed. This can be used to indicate that a specific CRD and/or extension
	// apiserver must be installed before this addon can be installed. The addon will not
	// be installed until that resource is served.
	RequiredResourceTypes []schema.GroupVersionKind `json:"requiredResourceTypes,omitempty"`
	// IsDefault indicates whether the addon is default
	IsDefault bool `json:"isDefault,omitempty"`
}

AddonSpec specifies details of an addon.

func (*AddonSpec) DeepCopy

func (in *AddonSpec) DeepCopy() *AddonSpec

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

func (*AddonSpec) DeepCopyInto

func (in *AddonSpec) DeepCopyInto(out *AddonSpec)

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

type AddonStatus

type AddonStatus struct {
	Conditions []AddonCondition `json:"conditions,omitempty"`
}

func (*AddonStatus) DeepCopy

func (in *AddonStatus) DeepCopy() *AddonStatus

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

func (*AddonStatus) DeepCopyInto

func (in *AddonStatus) DeepCopyInto(out *AddonStatus)

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

type AdmissionPlugin

type AdmissionPlugin struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec AdmissionPluginSpec `json:"spec"`
}

AdmissionPlugin is the type representing a AdmissionPlugin.

func (*AdmissionPlugin) DeepCopy

func (in *AdmissionPlugin) DeepCopy() *AdmissionPlugin

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

func (*AdmissionPlugin) DeepCopyInto

func (in *AdmissionPlugin) DeepCopyInto(out *AdmissionPlugin)

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

func (*AdmissionPlugin) DeepCopyObject

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

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

type AdmissionPluginList

type AdmissionPluginList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// List of Admission Plugins
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md
	Items []AdmissionPlugin `json:"items" protobuf:"bytes,2,rep,name=items"`
}

AdmissionPluginList is the type representing a AdmissionPluginList.

func (*AdmissionPluginList) DeepCopy

func (in *AdmissionPluginList) DeepCopy() *AdmissionPluginList

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

func (*AdmissionPluginList) DeepCopyInto

func (in *AdmissionPluginList) DeepCopyInto(out *AdmissionPluginList)

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

func (*AdmissionPluginList) DeepCopyObject

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

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

type AdmissionPluginSpec

type AdmissionPluginSpec struct {
	PluginName string `json:"pluginName"`

	// FromVersion flag can be empty. It means the plugin fit to all k8s versions
	FromVersion *semver.Semver `json:"fromVersion,omitempty"`
}

AdmissionPluginSpec specifies admission plugin name and from which k8s version is supported.

func (*AdmissionPluginSpec) DeepCopy

func (in *AdmissionPluginSpec) DeepCopy() *AdmissionPluginSpec

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

func (*AdmissionPluginSpec) DeepCopyInto

func (in *AdmissionPluginSpec) DeepCopyInto(out *AdmissionPluginSpec)

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

type Alertmanager added in v2.18.0

type Alertmanager struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AlertmanagerSpec   `json:"spec,omitempty"`
	Status AlertmanagerStatus `json:"status,omitempty"`
}

func (*Alertmanager) DeepCopy added in v2.18.0

func (in *Alertmanager) DeepCopy() *Alertmanager

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

func (*Alertmanager) DeepCopyInto added in v2.18.0

func (in *Alertmanager) DeepCopyInto(out *Alertmanager)

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

func (*Alertmanager) DeepCopyObject added in v2.18.0

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

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

type AlertmanagerConfigurationStatus added in v2.19.0

type AlertmanagerConfigurationStatus struct {
	// LastUpdated stores the last successful time when the configuration was successfully applied
	LastUpdated metav1.Time `json:"lastUpdated,omitempty"`
	// Status of whether the configuration was applied, one of True, False
	Status corev1.ConditionStatus `json:"status"`
	// ErrorMessage contains a default error message in case the configuration could not be applied.
	// Will be reset if the error was resolved and condition becomes True
	ErrorMessage string `json:"errorMessage,omitempty"`
}

AlertmanagerConfigurationStatus stores status information about the AlertManager configuration.

func (*AlertmanagerConfigurationStatus) DeepCopy added in v2.19.0

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

func (*AlertmanagerConfigurationStatus) DeepCopyInto added in v2.19.0

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

type AlertmanagerList added in v2.18.0

type AlertmanagerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Alertmanager `json:"items"`
}

func (*AlertmanagerList) DeepCopy added in v2.18.0

func (in *AlertmanagerList) DeepCopy() *AlertmanagerList

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

func (*AlertmanagerList) DeepCopyInto added in v2.18.0

func (in *AlertmanagerList) DeepCopyInto(out *AlertmanagerList)

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

func (*AlertmanagerList) DeepCopyObject added in v2.18.0

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

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

type AlertmanagerSpec added in v2.18.0

type AlertmanagerSpec struct {
	// ConfigSecret refers to the Secret in the same namespace as the Alertmanager object,
	// which contains configuration for this Alertmanager.
	ConfigSecret corev1.LocalObjectReference `json:"configSecret"`
}

func (*AlertmanagerSpec) DeepCopy added in v2.18.0

func (in *AlertmanagerSpec) DeepCopy() *AlertmanagerSpec

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

func (*AlertmanagerSpec) DeepCopyInto added in v2.18.0

func (in *AlertmanagerSpec) DeepCopyInto(out *AlertmanagerSpec)

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

type AlertmanagerStatus added in v2.19.0

type AlertmanagerStatus struct {
	ConfigStatus AlertmanagerConfigurationStatus `json:"configStatus,omitempty"`
}

AlertmanagerStatus stores status information about the AlertManager.

func (*AlertmanagerStatus) DeepCopy added in v2.19.0

func (in *AlertmanagerStatus) DeepCopy() *AlertmanagerStatus

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

func (*AlertmanagerStatus) DeepCopyInto added in v2.19.0

func (in *AlertmanagerStatus) DeepCopyInto(out *AlertmanagerStatus)

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

type Alibaba

type Alibaba struct {
	ProviderPreset `json:",inline"`

	AccessKeyID     string `json:"accessKeyId"`
	AccessKeySecret string `json:"accessKeySecret"`
}

func (*Alibaba) DeepCopy

func (in *Alibaba) DeepCopy() *Alibaba

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

func (*Alibaba) DeepCopyInto

func (in *Alibaba) DeepCopyInto(out *Alibaba)

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

func (Alibaba) IsValid added in v2.16.3

func (s Alibaba) IsValid() bool

type AlibabaCloudSpec

type AlibabaCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	AccessKeyID     string `json:"accessKeyId,omitempty"`
	AccessKeySecret string `json:"accessKeySecret,omitempty"`
}

AlibabaCloudSpec specifies the access data to Alibaba.

func (*AlibabaCloudSpec) DeepCopy

func (in *AlibabaCloudSpec) DeepCopy() *AlibabaCloudSpec

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

func (*AlibabaCloudSpec) DeepCopyInto

func (in *AlibabaCloudSpec) DeepCopyInto(out *AlibabaCloudSpec)

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

type AllowedRegistry added in v2.18.0

type AllowedRegistry struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec AllowedRegistrySpec `json:"spec,omitempty"`
}

AllowedRegistry is the object representing an allowed registry.

func (*AllowedRegistry) DeepCopy added in v2.18.0

func (in *AllowedRegistry) DeepCopy() *AllowedRegistry

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

func (*AllowedRegistry) DeepCopyInto added in v2.18.0

func (in *AllowedRegistry) DeepCopyInto(out *AllowedRegistry)

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

func (*AllowedRegistry) DeepCopyObject added in v2.18.0

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

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

type AllowedRegistryList added in v2.18.0

type AllowedRegistryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []AllowedRegistry `json:"items"`
}

AllowedRegistryList specifies a list of allowed registries.

func (*AllowedRegistryList) DeepCopy added in v2.18.0

func (in *AllowedRegistryList) DeepCopy() *AllowedRegistryList

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

func (*AllowedRegistryList) DeepCopyInto added in v2.18.0

func (in *AllowedRegistryList) DeepCopyInto(out *AllowedRegistryList)

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

func (*AllowedRegistryList) DeepCopyObject added in v2.18.0

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

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

type AllowedRegistrySpec added in v2.18.0

type AllowedRegistrySpec struct {
	// RegistryPrefix contains the prefix of the registry which will be allowed. User clusters will be able to deploy
	// only images which are prefixed with one of the allowed image registry prefixes.
	RegistryPrefix string `json:"registryPrefix"`
}

AllowedRegistrySpec specifies the data for allowed registry spec.

func (*AllowedRegistrySpec) DeepCopy added in v2.18.0

func (in *AllowedRegistrySpec) DeepCopy() *AllowedRegistrySpec

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

func (*AllowedRegistrySpec) DeepCopyInto added in v2.18.0

func (in *AllowedRegistrySpec) DeepCopyInto(out *AllowedRegistrySpec)

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

type Anexia added in v2.16.3

type Anexia struct {
	ProviderPreset `json:",inline"`

	// Token is used to authenticate with the Anexia API.
	Token string `json:"token"`
}

func (*Anexia) DeepCopy added in v2.16.3

func (in *Anexia) DeepCopy() *Anexia

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

func (*Anexia) DeepCopyInto added in v2.16.3

func (in *Anexia) DeepCopyInto(out *Anexia)

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

func (Anexia) IsValid added in v2.16.3

func (s Anexia) IsValid() bool

type AnexiaCloudSpec added in v2.16.3

type AnexiaCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	Token string `json:"token,omitempty"`
}

AnexiaCloudSpec specifies the access data to Anexia.

func (*AnexiaCloudSpec) DeepCopy added in v2.16.3

func (in *AnexiaCloudSpec) DeepCopy() *AnexiaCloudSpec

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

func (*AnexiaCloudSpec) DeepCopyInto added in v2.16.3

func (in *AnexiaCloudSpec) DeepCopyInto(out *AnexiaCloudSpec)

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

type AuditLoggingSettings

type AuditLoggingSettings struct {
	Enabled      bool              `json:"enabled,omitempty"`
	PolicyPreset AuditPolicyPreset `json:"policyPreset,omitempty"`
}

func (*AuditLoggingSettings) DeepCopy

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

func (*AuditLoggingSettings) DeepCopyInto

func (in *AuditLoggingSettings) DeepCopyInto(out *AuditLoggingSettings)

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

type AuditPolicyPreset added in v2.19.0

type AuditPolicyPreset string
const (
	AuditPolicyMetadata    AuditPolicyPreset = "metadata"
	AuditPolicyRecommended AuditPolicyPreset = "recommended"
	AuditPolicyMinimal     AuditPolicyPreset = "minimal"
)

type Azure

type Azure struct {
	ProviderPreset `json:",inline"`

	TenantID       string `json:"tenantId"`
	SubscriptionID string `json:"subscriptionId"`
	ClientID       string `json:"clientId"`
	ClientSecret   string `json:"clientSecret"`

	ResourceGroup     string `json:"resourceGroup,omitempty"`
	VNetResourceGroup string `json:"vnetResourceGroup,omitempty"`
	VNetName          string `json:"vnet,omitempty"`
	SubnetName        string `json:"subnet,omitempty"`
	RouteTableName    string `json:"routeTable,omitempty"`
	SecurityGroup     string `json:"securityGroup,omitempty"`
	// LoadBalancerSKU sets the LB type that will be used for the Azure cluster, possible values are "basic" and "standard", if empty, "basic" will be used
	LoadBalancerSKU LBSKU `json:"loadBalancerSKU"`
}

func (*Azure) DeepCopy

func (in *Azure) DeepCopy() *Azure

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

func (*Azure) DeepCopyInto

func (in *Azure) DeepCopyInto(out *Azure)

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

func (Azure) IsValid added in v2.16.3

func (s Azure) IsValid() bool

type AzureCloudSpec

type AzureCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	TenantID       string `json:"tenantID,omitempty"`
	SubscriptionID string `json:"subscriptionID,omitempty"`
	ClientID       string `json:"clientID,omitempty"`
	ClientSecret   string `json:"clientSecret,omitempty"`

	ResourceGroup     string `json:"resourceGroup"`
	VNetResourceGroup string `json:"vnetResourceGroup"`
	VNetName          string `json:"vnet"`
	SubnetName        string `json:"subnet"`
	RouteTableName    string `json:"routeTable"`
	SecurityGroup     string `json:"securityGroup"`
	// NodePortsAllowedIPRange is the range of addresses allowed to access the cluster nodeports.
	// If not specified, the default value is 0.0.0.0/0, i.e., no restriction.
	NodePortsAllowedIPRange string `json:"nodePortsAllowedIPRange,omitempty"`
	AssignAvailabilitySet   *bool  `json:"assignAvailabilitySet"`
	AvailabilitySet         string `json:"availabilitySet"`
	// LoadBalancerSKU sets the LB type that will be used for the Azure cluster, possible values are "basic" and "standard", if empty, "basic" will be used
	LoadBalancerSKU LBSKU `json:"loadBalancerSKU"`
}

AzureCloudSpec specifies access credentials to Azure cloud.

func (*AzureCloudSpec) DeepCopy

func (in *AzureCloudSpec) DeepCopy() *AzureCloudSpec

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

func (*AzureCloudSpec) DeepCopyInto

func (in *AzureCloudSpec) DeepCopyInto(out *AzureCloudSpec)

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

type BackupDestination added in v2.19.0

type BackupDestination struct {
	// Endpoint is the API endpoint to use for backup and restore.
	Endpoint string `json:"endpoint"`
	// BucketName is the bucket name to use for backup and restore.
	BucketName string `json:"bucketName"`
	// Credentials hold the ref to the secret with backup credentials
	Credentials *corev1.SecretReference `json:"credentials,omitempty"`
}

BackupDestination defines the bucket name and endpoint as a backup destination, and holds reference to the credentials secret.

func (*BackupDestination) DeepCopy added in v2.19.0

func (in *BackupDestination) DeepCopy() *BackupDestination

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

func (*BackupDestination) DeepCopyInto added in v2.19.0

func (in *BackupDestination) DeepCopyInto(out *BackupDestination)

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

type BackupStatus added in v2.17.0

type BackupStatus struct {
	// ScheduledTime will always be set when the BackupStatus is created, so it'll never be nil
	ScheduledTime      *metav1.Time      `json:"scheduledTime,omitempty"`
	BackupName         string            `json:"backupName,omitempty"`
	JobName            string            `json:"jobName,omitempty"`
	BackupStartTime    *metav1.Time      `json:"backupStartTime,omitempty"`
	BackupFinishedTime *metav1.Time      `json:"backupFinishedTime,omitempty"`
	BackupPhase        BackupStatusPhase `json:"backupPhase,omitempty"`
	BackupMessage      string            `json:"backupMessage,omitempty"`
	DeleteJobName      string            `json:"deleteJobName,omitempty"`
	DeleteStartTime    *metav1.Time      `json:"deleteStartTime,omitempty"`
	DeleteFinishedTime *metav1.Time      `json:"deleteFinishedTime,omitempty"`
	DeletePhase        BackupStatusPhase `json:"deletePhase,omitempty"`
	DeleteMessage      string            `json:"deleteMessage,omitempty"`
}

func (*BackupStatus) DeepCopy added in v2.17.0

func (in *BackupStatus) DeepCopy() *BackupStatus

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

func (*BackupStatus) DeepCopyInto added in v2.17.0

func (in *BackupStatus) DeepCopyInto(out *BackupStatus)

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

type BackupStatusPhase added in v2.17.0

type BackupStatusPhase string

type BringYourOwnCloudSpec

type BringYourOwnCloudSpec struct{}

BringYourOwnCloudSpec specifies access data for a bring your own cluster.

func (*BringYourOwnCloudSpec) DeepCopy

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

func (*BringYourOwnCloudSpec) DeepCopyInto

func (in *BringYourOwnCloudSpec) DeepCopyInto(out *BringYourOwnCloudSpec)

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

type Bytes

type Bytes []byte

func NewBytes

func NewBytes(b64 string) Bytes

NewBytes creates a Bytes instance from a base64 string, returning nil for an empty base64 string.

func (Bytes) Base64

func (bs Bytes) Base64() string

Base64 converts a Bytes instance to a base64 string.

func (Bytes) DeepCopy

func (in Bytes) DeepCopy() Bytes

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

func (Bytes) DeepCopyInto

func (in Bytes) DeepCopyInto(out *Bytes)

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

func (Bytes) MarshalJSON

func (bs Bytes) MarshalJSON() ([]byte, error)

MarshalJSON adds base64 json encoding to the Bytes type.

func (*Bytes) UnmarshalJSON

func (bs *Bytes) UnmarshalJSON(src []byte) error

UnmarshalJSON adds base64 json decoding to the Bytes type.

type CNIPluginSettings added in v2.18.0

type CNIPluginSettings struct {
	Type    CNIPluginType `json:"type"`
	Version string        `json:"version"`
}

CNIPluginSettings contains the spec of the CNI plugin used by the Cluster.

func (*CNIPluginSettings) DeepCopy added in v2.18.0

func (in *CNIPluginSettings) DeepCopy() *CNIPluginSettings

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

func (*CNIPluginSettings) DeepCopyInto added in v2.18.0

func (in *CNIPluginSettings) DeepCopyInto(out *CNIPluginSettings)

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

type CNIPluginType added in v2.18.0

type CNIPluginType string

CNIPluginType define the type of CNI plugin installed. e.g. Canal.

const (
	// CNIPluginTypeCanal corresponds to Canal CNI plugin (i.e. Flannel +
	// Calico for policy enforcement).
	CNIPluginTypeCanal CNIPluginType = "canal"

	// CNIPluginTypeCilium corresponds to Cilium CNI plugin.
	CNIPluginTypeCilium CNIPluginType = "cilium"

	// CNIPluginTypeNone corresponds to no CNI plugin managed by KKP
	// (cluster users are responsible for managing the CNI in the cluster themselves).
	CNIPluginTypeNone CNIPluginType = "none"
)

func (CNIPluginType) String added in v2.18.0

func (c CNIPluginType) String() string

type CleanupOptions

type CleanupOptions struct {
	Enabled  bool
	Enforced bool
}

func (*CleanupOptions) DeepCopy

func (in *CleanupOptions) DeepCopy() *CleanupOptions

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

func (*CleanupOptions) DeepCopyInto

func (in *CleanupOptions) DeepCopyInto(out *CleanupOptions)

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

type CloudSpec

type CloudSpec struct {
	// DatacenterName where the users 'cloud' lives in.
	DatacenterName string `json:"dc"`

	// ProviderName is the name of the cloud provider used for this cluster.
	// This must match the given provider spec (e.g. if the providerName is
	// "aws", then the AWSCloudSpec must be set)
	ProviderName string `json:"providerName"`

	Fake         *FakeCloudSpec         `json:"fake,omitempty"`
	Digitalocean *DigitaloceanCloudSpec `json:"digitalocean,omitempty"`
	BringYourOwn *BringYourOwnCloudSpec `json:"bringyourown,omitempty"`
	AWS          *AWSCloudSpec          `json:"aws,omitempty"`
	Azure        *AzureCloudSpec        `json:"azure,omitempty"`
	Openstack    *OpenstackCloudSpec    `json:"openstack,omitempty"`
	Packet       *PacketCloudSpec       `json:"packet,omitempty"`
	Hetzner      *HetznerCloudSpec      `json:"hetzner,omitempty"`
	VSphere      *VSphereCloudSpec      `json:"vsphere,omitempty"`
	GCP          *GCPCloudSpec          `json:"gcp,omitempty"`
	Kubevirt     *KubevirtCloudSpec     `json:"kubevirt,omitempty"`
	Alibaba      *AlibabaCloudSpec      `json:"alibaba,omitempty"`
	Anexia       *AnexiaCloudSpec       `json:"anexia,omitempty"`
	Nutanix      *NutanixCloudSpec      `json:"nutanix,omitempty"`
}

CloudSpec mutually stores access data to a cloud provider.

func (*CloudSpec) DeepCopy

func (in *CloudSpec) DeepCopy() *CloudSpec

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

func (*CloudSpec) DeepCopyInto

func (in *CloudSpec) DeepCopyInto(out *CloudSpec)

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

type Cluster

type Cluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec    ClusterSpec    `json:"spec"`
	Address ClusterAddress `json:"address,omitempty"`
	Status  ClusterStatus  `json:"status,omitempty"`
}

Cluster is the object representing a cluster.

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) GetSecretName

func (cluster *Cluster) GetSecretName() string

func (*Cluster) GetUserClusterMLAResourceRequirements added in v2.18.0

func (cluster *Cluster) GetUserClusterMLAResourceRequirements() map[string]*corev1.ResourceRequirements

func (*Cluster) GetUserClusterOPAResourceRequirements added in v2.19.0

func (cluster *Cluster) GetUserClusterOPAResourceRequirements() map[string]*corev1.ResourceRequirements

type ClusterAddress

type ClusterAddress struct {
	// URL under which the Apiserver is available
	URL string `json:"url"`
	// Port is the port the API server listens on
	Port int32 `json:"port"`
	// ExternalName is the DNS name for this cluster
	ExternalName string `json:"externalName"`
	// InternalName is the seed cluster internal absolute DNS name to the API server
	InternalName string `json:"internalURL"`
	// AdminToken is the token for the kubeconfig, the user can download
	AdminToken string `json:"adminToken"`
	// IP is the external IP under which the apiserver is available
	IP string `json:"ip"`
}

ClusterAddress stores access and address information of a cluster.

func (*ClusterAddress) DeepCopy

func (in *ClusterAddress) DeepCopy() *ClusterAddress

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

func (*ClusterAddress) DeepCopyInto

func (in *ClusterAddress) DeepCopyInto(out *ClusterAddress)

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

type ClusterCondition

type ClusterCondition struct {
	// Type of cluster condition.
	Type ClusterConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// KubermaticVersion current kubermatic version.
	KubermaticVersion string `json:"kubermatic_version"`
	// Last time we got an update on a given condition.
	// +optional
	LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty"`
	// Last time the condition transit from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// (brief) reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Human readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

func (*ClusterCondition) DeepCopy

func (in *ClusterCondition) DeepCopy() *ClusterCondition

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

func (*ClusterCondition) DeepCopyInto

func (in *ClusterCondition) DeepCopyInto(out *ClusterCondition)

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

type ClusterConditionType

type ClusterConditionType string

ClusterConditionType is used to indicate the type of a cluster condition. For all condition types, the `true` value must indicate success. All condition types must be registered within the `AllClusterConditionTypes` variable.

const (
	// ClusterConditionSeedResourcesUpToDate indicates that all controllers have finished setting up the
	// resources for a user clusters that run inside the seed cluster, i.e. this ignores
	// the status of cloud provider resources for a given cluster.
	ClusterConditionSeedResourcesUpToDate ClusterConditionType = "SeedResourcesUpToDate"

	ClusterConditionClusterControllerReconcilingSuccess           ClusterConditionType = "ClusterControllerReconciledSuccessfully"
	ClusterConditionAddonControllerReconcilingSuccess             ClusterConditionType = "AddonControllerReconciledSuccessfully"
	ClusterConditionAddonInstallerControllerReconcilingSuccess    ClusterConditionType = "AddonInstallerControllerReconciledSuccessfully"
	ClusterConditionBackupControllerReconcilingSuccess            ClusterConditionType = "BackupControllerReconciledSuccessfully"
	ClusterConditionCloudControllerReconcilingSuccess             ClusterConditionType = "CloudControllerReconcilledSuccessfully"
	ClusterConditionUpdateControllerReconcilingSuccess            ClusterConditionType = "UpdateControllerReconciledSuccessfully"
	ClusterConditionMonitoringControllerReconcilingSuccess        ClusterConditionType = "MonitoringControllerReconciledSuccessfully"
	ClusterConditionMachineDeploymentControllerReconcilingSuccess ClusterConditionType = "MachineDeploymentReconciledSuccessfully"
	ClusterConditionMLAControllerReconcilingSuccess               ClusterConditionType = "MLAControllerReconciledSuccessfully"
	ClusterConditionClusterInitialized                            ClusterConditionType = "ClusterInitialized"

	ClusterConditionEtcdClusterInitialized ClusterConditionType = "EtcdClusterInitialized"

	// ClusterConditionNone is a special value indicating that no cluster condition should be set.
	ClusterConditionNone ClusterConditionType = ""
	// This condition is met when a CSI migration is ongoing and the CSI
	// migration feature gates are activated on the Kubelets of all the nodes.
	// When this condition is `true` CSIMigration{provider}Complete can be
	// enabled.
	ClusterConditionCSIKubeletMigrationCompleted ClusterConditionType = "CSIKubeletMigrationCompleted"

	ReasonClusterUpdateSuccessful             = "ClusterUpdateSuccessful"
	ReasonClusterUpdateInProgress             = "ClusterUpdateInProgress"
	ReasonClusterCSIKubeletMigrationCompleted = "CSIKubeletMigrationSuccess"
	ReasonClusterCCMMigrationInProgress       = "CSIKubeletMigrationInProgress"
)

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Cluster `json:"items"`
}

ClusterList specifies a list of clusters.

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterNetworkingConfig

type ClusterNetworkingConfig struct {
	// The network ranges from which service VIPs are allocated.
	Services NetworkRanges `json:"services"`

	// The network ranges from which POD networks are allocated.
	Pods NetworkRanges `json:"pods"`

	// Domain name for services.
	DNSDomain string `json:"dnsDomain"`

	// ProxyMode defines the kube-proxy mode ("ipvs" / "iptables" / "ebpf").
	// Defaults to "ipvs". "ebpf" disables kube-proxy and requires CNI support.
	ProxyMode string `json:"proxyMode"`

	// IPVS defines kube-proxy ipvs configuration options
	IPVS *IPVSConfiguration `json:"ipvs,omitempty"`

	// NodeLocalDNSCacheEnabled controls whether the NodeLocal DNS Cache feature is enabled.
	// Defaults to true.
	NodeLocalDNSCacheEnabled *bool `json:"nodeLocalDNSCacheEnabled,omitempty"`

	// KonnectivityEnabled enables konnectivity for controlplane to node network communication.
	KonnectivityEnabled *bool `json:"konnectivityEnabled,omitempty"`
}

ClusterNetworkingConfig specifies the different networking parameters for a cluster.

func (*ClusterNetworkingConfig) DeepCopy

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

func (*ClusterNetworkingConfig) DeepCopyInto

func (in *ClusterNetworkingConfig) DeepCopyInto(out *ClusterNetworkingConfig)

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

type ClusterSpec

type ClusterSpec struct {
	Cloud           CloudSpec                 `json:"cloud"`
	ClusterNetwork  ClusterNetworkingConfig   `json:"clusterNetwork"`
	MachineNetworks []MachineNetworkingConfig `json:"machineNetworks,omitempty"`

	// Version defines the wanted version of the control plane
	Version semver.Semver `json:"version"`
	// MasterVersion is Deprecated
	MasterVersion string `json:"masterVersion,omitempty"`

	// HumanReadableName is the cluster name provided by the user
	HumanReadableName string `json:"humanReadableName"`

	// ExposeStrategy is the approach we use to expose this cluster, either via NodePort
	// or via a dedicated LoadBalancer
	ExposeStrategy ExposeStrategy `json:"exposeStrategy"`

	// Pause tells that this cluster is currently not managed by the controller.
	// It indicates that the user needs to do some action to resolve the pause.
	Pause bool `json:"pause"`
	// PauseReason is the reason why the cluster is no being managed.
	PauseReason string `json:"pauseReason,omitempty"`

	// DebugLog enables more verbose logging by KKP's usercluster-controller-manager.
	DebugLog bool `json:"debugLog,omitempty"`

	// Optional component specific overrides
	ComponentsOverride ComponentSettings `json:"componentsOverride"`

	OIDC OIDCSettings `json:"oidc,omitempty"`

	// Feature flags
	// This unfortunately has to be a string map, because we use it in templating and that
	// can not cope with string types
	Features map[string]bool `json:"features,omitempty"`

	UpdateWindow *UpdateWindow `json:"updateWindow,omitempty"`

	UsePodSecurityPolicyAdmissionPlugin bool `json:"usePodSecurityPolicyAdmissionPlugin,omitempty"`
	UsePodNodeSelectorAdmissionPlugin   bool `json:"usePodNodeSelectorAdmissionPlugin,omitempty"`
	UseEventRateLimitAdmissionPlugin    bool `json:"useEventRateLimitAdmissionPlugin,omitempty"`

	// EnableUserSSHKeyAgent control whether the UserSSHKeyAgent will be deployed in the user cluster or not.
	// If it was enabled, the agent will be deployed and used to sync the user ssh keys, that the user attach
	// to the created cluster. If the agent was disabled, it won't be deployed in the user cluster, thus after
	// the cluster creation any attached ssh keys won't be synced to the worker nodes. Once the agent is enabled/disabled
	// it cannot be changed after the cluster is being created.
	EnableUserSSHKeyAgent *bool `json:"enableUserSSHKeyAgent,omitempty"`

	// EnableOperatingSystemManager enables OSM which in-turn is responsible for creating and managing worker node configuration
	EnableOperatingSystemManager bool `json:"enableOperatingSystemManager,omitempty"`

	// PodNodeSelectorAdmissionPluginConfig provides the configuration for the PodNodeSelector.
	// It's used by the backend to create a configuration file for this plugin.
	// The key:value from the map is converted to the namespace:<node-selectors-labels> in the file.
	// The format in a file:
	// podNodeSelectorPluginConfig:
	//  clusterDefaultNodeSelector: <node-selectors-labels>
	//  namespace1: <node-selectors-labels>
	//  namespace2: <node-selectors-labels>
	PodNodeSelectorAdmissionPluginConfig map[string]string `json:"podNodeSelectorAdmissionPluginConfig,omitempty"`

	// EventRateLimitConfig allows configuring the EventRateLimit admission plugin (if enabled via useEventRateLimitAdmissionPlugin)
	// to create limits on Kubernetes event generation. The EventRateLimit plugin is capable of comparing incoming Events
	// to several configured buckets based on the type of event rate limit.
	EventRateLimitConfig *EventRateLimitConfig `json:"eventRateLimitConfig,omitempty"`

	// AdmissionPlugins provides the ability to pass arbitrary names of admission plugins to kube-apiserver
	AdmissionPlugins []string `json:"admissionPlugins,omitempty"`

	AuditLogging *AuditLoggingSettings `json:"auditLogging,omitempty"`

	// OPAIntegration is a preview feature that enables OPA integration with Kubermatic for the cluster.
	// Enabling it causes gatekeeper and its resources to be deployed on the user cluster.
	// By default it is disabled.
	OPAIntegration *OPAIntegrationSettings `json:"opaIntegration,omitempty"`

	// ServiceAccount contains service account related settings for the kube-apiserver of user cluster.
	ServiceAccount *ServiceAccountSettings `json:"serviceAccount,omitempty"`

	// MLA contains monitoring, logging and alerting related settings for the user cluster.
	MLA *MLASettings `json:"mla,omitempty"`

	// ContainerRuntime to use, i.e. Docker or containerd. By default containerd will be used.
	ContainerRuntime string `json:"containerRuntime,omitempty"`

	// CNIPlugin contains the spec of the CNI plugin to be installed in the cluster.
	CNIPlugin *CNIPluginSettings `json:"cniPlugin,omitempty"`
}

ClusterSpec specifies the data for a new cluster.

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterStatus

type ClusterStatus struct {
	LastUpdated metav1.Time `json:"lastUpdated,omitempty"`
	// ExtendedHealth exposes information about the current health state.
	// Extends standard health status for new states.
	ExtendedHealth ExtendedClusterHealth `json:"extendedHealth,omitempty"`
	// LastProviderReconciliation is the time when the cloud provider resources
	// were last fully reconciled (during normal cluster reconciliation, KKP does
	// not re-check things like security groups, networks etc.).
	LastProviderReconciliation *metav1.Time `json:"lastProviderReconciliation,omitempty"`
	// KubermaticVersion is the current kubermatic version in a cluster.
	KubermaticVersion string `json:"kubermatic_version"`
	// Deprecated
	RootCA *KeyCert `json:"rootCA,omitempty"`
	// Deprecated
	ApiserverCert *KeyCert `json:"apiserverCert,omitempty"`
	// Deprecated
	KubeletCert *KeyCert `json:"kubeletCert,omitempty"`
	// Deprecated
	ApiserverSSHKey *RSAKeys `json:"apiserverSshKey,omitempty"`
	// Deprecated
	ServiceAccountKey Bytes `json:"serviceAccountKey,omitempty"`
	// NamespaceName defines the namespace the control plane of this cluster is deployed in
	NamespaceName string `json:"namespaceName"`

	// UserName contains the name of the owner of this cluster
	UserName string `json:"userName,omitempty"`
	// UserEmail contains the email of the owner of this cluster
	UserEmail string `json:"userEmail"`

	// ErrorReason contains a error reason in case the controller encountered an error. Will be reset if the error was resolved
	ErrorReason *ClusterStatusError `json:"errorReason,omitempty"`
	// ErrorMessage contains a default error message in case the controller encountered an error. Will be reset if the error was resolved
	ErrorMessage *string `json:"errorMessage,omitempty"`

	// Conditions contains conditions the cluster is in, its primary use case is status signaling between controllers or between
	// controllers and the API
	Conditions []ClusterCondition `json:"conditions,omitempty"`

	// CloudMigrationRevision describes the latest version of the migration that has been done
	// It is used to avoid redundant and potentially costly migrations
	CloudMigrationRevision int `json:"cloudMigrationRevision"`

	// InheritedLabels are labels the cluster inherited from the project. They are read-only for users.
	InheritedLabels map[string]string `json:"inheritedLabels,omitempty"`
}

ClusterStatus stores status information about a cluster.

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

func (*ClusterStatus) HasConditionValue

func (cs *ClusterStatus) HasConditionValue(conditionType ClusterConditionType, conditionStatus corev1.ConditionStatus) bool

HasConditionValue returns true if the cluster status has the given condition with the given status. It does not verify that the condition has been set by a certain Kubermatic version, it just checks the existence.

type ClusterStatusError

type ClusterStatusError string
const (
	InvalidConfigurationClusterError ClusterStatusError = "InvalidConfiguration"
	UnsupportedChangeClusterError    ClusterStatusError = "UnsupportedChange"
	ReconcileClusterError            ClusterStatusError = "ReconcileError"
)

type ClusterTemplate added in v2.18.0

type ClusterTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	ClusterLabels          map[string]string       `json:"clusterLabels,omitempty"`
	InheritedClusterLabels map[string]string       `json:"inheritedClusterLabels,omitempty"`
	Credential             string                  `json:"credential"`
	UserSSHKeys            []ClusterTemplateSSHKey `json:"userSshKeys"`
	Spec                   ClusterSpec             `json:"spec"`
}

ClusterTemplate is the object representing a cluster template.

func (*ClusterTemplate) DeepCopy added in v2.18.0

func (in *ClusterTemplate) DeepCopy() *ClusterTemplate

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

func (*ClusterTemplate) DeepCopyInto added in v2.18.0

func (in *ClusterTemplate) DeepCopyInto(out *ClusterTemplate)

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

func (*ClusterTemplate) DeepCopyObject added in v2.18.0

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

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

type ClusterTemplateInstance added in v2.18.0

type ClusterTemplateInstance struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ClusterTemplateInstanceSpec `json:"spec,omitempty"`
}

ClusterTemplateInstance is the object representing a cluster template instance.

func (*ClusterTemplateInstance) DeepCopy added in v2.18.0

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

func (*ClusterTemplateInstance) DeepCopyInto added in v2.18.0

func (in *ClusterTemplateInstance) DeepCopyInto(out *ClusterTemplateInstance)

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

func (*ClusterTemplateInstance) DeepCopyObject added in v2.18.0

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

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

type ClusterTemplateInstanceList added in v2.18.0

type ClusterTemplateInstanceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ClusterTemplateInstance `json:"items"`
}

ClusterTemplateInstanceList specifies a list of cluster template instances.

func (*ClusterTemplateInstanceList) DeepCopy added in v2.18.0

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

func (*ClusterTemplateInstanceList) DeepCopyInto added in v2.18.0

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

func (*ClusterTemplateInstanceList) DeepCopyObject added in v2.18.0

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

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

type ClusterTemplateInstanceSpec added in v2.18.0

type ClusterTemplateInstanceSpec struct {
	ProjectID           string `json:"projectID"`
	ClusterTemplateID   string `json:"clusterTemplateID"`
	ClusterTemplateName string `json:"clusterTemplateName"`
	Replicas            int64  `json:"replicas"`
}

ClusterTemplateInstanceSpec specifies the data for cluster instances.

func (*ClusterTemplateInstanceSpec) DeepCopy added in v2.18.0

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

func (*ClusterTemplateInstanceSpec) DeepCopyInto added in v2.18.0

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

type ClusterTemplateList added in v2.18.0

type ClusterTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ClusterTemplate `json:"items"`
}

ClusterTemplateList specifies a list of cluster templates.

func (*ClusterTemplateList) DeepCopy added in v2.18.0

func (in *ClusterTemplateList) DeepCopy() *ClusterTemplateList

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

func (*ClusterTemplateList) DeepCopyInto added in v2.18.0

func (in *ClusterTemplateList) DeepCopyInto(out *ClusterTemplateList)

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

func (*ClusterTemplateList) DeepCopyObject added in v2.18.0

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

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

type ClusterTemplateSSHKey added in v2.18.0

type ClusterTemplateSSHKey struct {
	Name string `json:"name"`
	ID   string `json:"id"`
}

ClusterTemplateSSHKey is the object for holding SSH key.

func (*ClusterTemplateSSHKey) DeepCopy added in v2.18.0

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

func (*ClusterTemplateSSHKey) DeepCopyInto added in v2.18.0

func (in *ClusterTemplateSSHKey) DeepCopyInto(out *ClusterTemplateSSHKey)

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

type ClusterType

type ClusterType int8
const (
	ClusterTypeAll ClusterType = iota
	ClusterTypeKubernetes
)

type ComponentSettings

type ComponentSettings struct {
	Apiserver          APIServerSettings       `json:"apiserver"`
	ControllerManager  ControllerSettings      `json:"controllerManager"`
	Scheduler          ControllerSettings      `json:"scheduler"`
	Etcd               EtcdStatefulSetSettings `json:"etcd"`
	Prometheus         StatefulSetSettings     `json:"prometheus"`
	NodePortProxyEnvoy NodeportProxyComponent  `json:"nodePortProxyEnvoy"`
}

func (*ComponentSettings) DeepCopy

func (in *ComponentSettings) DeepCopy() *ComponentSettings

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

func (*ComponentSettings) DeepCopyInto

func (in *ComponentSettings) DeepCopyInto(out *ComponentSettings)

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

type Constraint added in v2.16.3

type Constraint struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ConstraintSpec `json:"spec,omitempty"`
}

Constraint specifies a kubermatic wrapper for the gatekeeper constraints.

func (*Constraint) DeepCopy added in v2.16.3

func (in *Constraint) DeepCopy() *Constraint

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

func (*Constraint) DeepCopyInto added in v2.16.3

func (in *Constraint) DeepCopyInto(out *Constraint)

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

func (*Constraint) DeepCopyObject added in v2.16.3

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

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

type ConstraintList added in v2.16.3

type ConstraintList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Constraint `json:"items"`
}

ConstraintList specifies a list of constraints.

func (*ConstraintList) DeepCopy added in v2.16.3

func (in *ConstraintList) DeepCopy() *ConstraintList

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

func (*ConstraintList) DeepCopyInto added in v2.16.3

func (in *ConstraintList) DeepCopyInto(out *ConstraintList)

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

func (*ConstraintList) DeepCopyObject added in v2.16.3

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

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

type ConstraintSelector added in v2.18.0

type ConstraintSelector struct {
	// Providers is a list of cloud providers to which the Constraint applies to. Empty means all providers are selected.
	Providers []string `json:"providers,omitempty"`
	// LabelSelector selects the Clusters to which the Constraint applies based on their labels
	LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"`
}

ConstraintSelector is the object holding the cluster selection filters.

func (*ConstraintSelector) DeepCopy added in v2.18.0

func (in *ConstraintSelector) DeepCopy() *ConstraintSelector

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

func (*ConstraintSelector) DeepCopyInto added in v2.18.0

func (in *ConstraintSelector) DeepCopyInto(out *ConstraintSelector)

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

type ConstraintSpec added in v2.16.3

type ConstraintSpec struct {
	// ConstraintType specifies the type of gatekeeper constraint that the constraint applies to
	ConstraintType string `json:"constraintType"`
	// Disabled  is the flag for disabling OPA constraints
	Disabled bool `json:"disabled,omitempty"`
	// Match contains the constraint to resource matching data
	Match Match `json:"match,omitempty"`
	// Parameters specifies the parameters used by the constraint template REGO.
	// It supports both the legacy rawJSON parameters, in which all the parameters are set in a JSON string, and regular
	// parameters like in Gatekeeper Constraints.
	// If rawJSON is set, during constraint syncing to the user cluster, the other parameters are ignored
	// Example with rawJSON parameters:
	//
	// parameters:
	//   rawJSON: '{"labels":["gatekeeper"]}'
	//
	// And with regular parameters:
	//
	// parameters:
	//   labels: ["gatekeeper"]
	//
	Parameters Parameters `json:"parameters,omitempty"`
	// Selector specifies the cluster selection filters
	Selector ConstraintSelector `json:"selector,omitempty"`
}

ConstraintSpec specifies the data for the constraint.

func (*ConstraintSpec) DeepCopy added in v2.16.3

func (in *ConstraintSpec) DeepCopy() *ConstraintSpec

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

func (*ConstraintSpec) DeepCopyInto added in v2.16.3

func (in *ConstraintSpec) DeepCopyInto(out *ConstraintSpec)

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

type ConstraintTemplate added in v2.16.3

type ConstraintTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ConstraintTemplateSpec `json:"spec"`
}

ConstraintTemplate is the object representing a kubermatic wrapper for a gatekeeper constraint template.

func (*ConstraintTemplate) DeepCopy added in v2.16.3

func (in *ConstraintTemplate) DeepCopy() *ConstraintTemplate

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

func (*ConstraintTemplate) DeepCopyInto added in v2.16.3

func (in *ConstraintTemplate) DeepCopyInto(out *ConstraintTemplate)

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

func (*ConstraintTemplate) DeepCopyObject added in v2.16.3

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

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

type ConstraintTemplateList added in v2.16.3

type ConstraintTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ConstraintTemplate `json:"items"`
}

ConstraintTemplateList specifies a list of constraint templates.

func (*ConstraintTemplateList) DeepCopy added in v2.16.3

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

func (*ConstraintTemplateList) DeepCopyInto added in v2.16.3

func (in *ConstraintTemplateList) DeepCopyInto(out *ConstraintTemplateList)

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

func (*ConstraintTemplateList) DeepCopyObject added in v2.16.3

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

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

type ConstraintTemplateSelector added in v2.17.0

type ConstraintTemplateSelector struct {
	// Providers is a list of cloud providers to which the Constraint Template applies to. Empty means all providers are selected.
	Providers []string `json:"providers,omitempty"`
	// LabelSelector selects the Clusters to which the Constraint Template applies based on their labels
	LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"`
}

ConstraintTemplateSelector is the object holding the cluster selection filters.

func (*ConstraintTemplateSelector) DeepCopy added in v2.17.0

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

func (*ConstraintTemplateSelector) DeepCopyInto added in v2.17.0

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

type ConstraintTemplateSpec added in v2.16.3

type ConstraintTemplateSpec struct {
	CRD      v1beta1.CRD                `json:"crd,omitempty"`
	Targets  []v1beta1.Target           `json:"targets,omitempty"`
	Selector ConstraintTemplateSelector `json:"selector,omitempty"`
}

ConstraintTemplateSpec is the object representing the gatekeeper constraint template spec and kubermatic related spec.

func (*ConstraintTemplateSpec) DeepCopy added in v2.16.3

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

func (*ConstraintTemplateSpec) DeepCopyInto added in v2.16.3

func (in *ConstraintTemplateSpec) DeepCopyInto(out *ConstraintTemplateSpec)

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

type ControllerSettings

type ControllerSettings struct {
	DeploymentSettings     `json:",inline"`
	LeaderElectionSettings `json:"leaderElection,omitempty"`
}

func (*ControllerSettings) DeepCopy

func (in *ControllerSettings) DeepCopy() *ControllerSettings

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

func (*ControllerSettings) DeepCopyInto

func (in *ControllerSettings) DeepCopyInto(out *ControllerSettings)

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

type CustomLink struct {
	Label    string `json:"label"`
	URL      string `json:"url"`
	Icon     string `json:"icon"`
	Location string `json:"location"`
}

func (*CustomLink) DeepCopy

func (in *CustomLink) DeepCopy() *CustomLink

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

func (*CustomLink) DeepCopyInto

func (in *CustomLink) DeepCopyInto(out *CustomLink)

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

type CustomLinks []CustomLink

func (CustomLinks) DeepCopy

func (in CustomLinks) DeepCopy() CustomLinks

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

func (CustomLinks) DeepCopyInto

func (in CustomLinks) DeepCopyInto(out *CustomLinks)

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

type Datacenter

type Datacenter struct {
	// Optional: Country of the seed as ISO-3166 two-letter code, e.g. DE or UK.
	// For informational purposes in the Kubermatic dashboard only.
	Country string `json:"country,omitempty"`
	// Optional: Detailed location of the cluster, like "Hamburg" or "Datacenter 7".
	// For informational purposes in the Kubermatic dashboard only.
	Location string `json:"location,omitempty"`
	// Node holds node-specific settings, like e.g. HTTP proxy, Docker
	// registries and the like. Proxy settings are inherited from the seed if
	// not specified here.
	Node *NodeSettings `json:"node,omitempty"`
	// Spec describes the cloud provider settings used to manage resources
	// in this datacenter. Exactly one cloud provider must be defined.
	Spec DatacenterSpec `json:"spec"`
}

func (*Datacenter) DeepCopy

func (in *Datacenter) DeepCopy() *Datacenter

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

func (*Datacenter) DeepCopyInto

func (in *Datacenter) DeepCopyInto(out *Datacenter)

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

type DatacenterSpec

type DatacenterSpec struct {
	Digitalocean *DatacenterSpecDigitalocean `json:"digitalocean,omitempty"`
	// BringYourOwn contains settings for clusters using manually created
	// nodes via kubeadm.
	BringYourOwn *DatacenterSpecBringYourOwn `json:"bringyourown,omitempty"`
	AWS          *DatacenterSpecAWS          `json:"aws,omitempty"`
	Azure        *DatacenterSpecAzure        `json:"azure,omitempty"`
	Openstack    *DatacenterSpecOpenstack    `json:"openstack,omitempty"`
	Packet       *DatacenterSpecPacket       `json:"packet,omitempty"`
	Hetzner      *DatacenterSpecHetzner      `json:"hetzner,omitempty"`
	VSphere      *DatacenterSpecVSphere      `json:"vsphere,omitempty"`
	GCP          *DatacenterSpecGCP          `json:"gcp,omitempty"`
	Kubevirt     *DatacenterSpecKubevirt     `json:"kubevirt,omitempty"`
	Alibaba      *DatacenterSpecAlibaba      `json:"alibaba,omitempty"`
	Anexia       *DatacenterSpecAnexia       `json:"anexia,omitempty"`
	// Nutanix is experimental and unsupported
	Nutanix *DatacenterSpecNutanix `json:"nutanix,omitempty"`

	//nolint:staticcheck
	//lint:ignore SA5008 omitgenyaml is used by the example-yaml-generator
	Fake *DatacenterSpecFake `json:"fake,omitempty,omitgenyaml"`

	// Optional: When defined, only users with an e-mail address on the
	// given domains can make use of this datacenter. You can define multiple
	// domains, e.g. "example.com", one of which must match the email domain
	// exactly (i.e. "example.com" will not match "user@test.example.com").
	// RequiredEmailDomain is deprecated. Automatically migrated to the RequiredEmailDomains field.
	RequiredEmailDomain  string   `json:"requiredEmailDomain,omitempty"`
	RequiredEmailDomains []string `json:"requiredEmailDomains,omitempty"`

	// EnforceAuditLogging enforces audit logging on every cluster within the DC,
	// ignoring cluster-specific settings.
	EnforceAuditLogging bool `json:"enforceAuditLogging,omitempty"`

	// EnforcePodSecurityPolicy enforces pod security policy plugin on every clusters within the DC,
	// ignoring cluster-specific settings
	EnforcePodSecurityPolicy bool `json:"enforcePodSecurityPolicy,omitempty"`

	// ProviderReconciliationInterval is the time that must have passed since a
	// Cluster's status.lastProviderReconciliation to make the cliuster controller
	// perform an in-depth provider reconciliation, where for example missing security
	// groups will be reconciled.
	// Setting this too low can cause rate limits by the cloud provider, setting this
	// too high means that *if* a resource at a cloud provider is removed/changed outside
	// of KKP, it will take this long to fix it.
	ProviderReconciliationInterval *metav1.Duration `json:"providerReconciliationInterval,omitempty"`
}

DatacenterSpec mutually points to provider datacenter spec.

func (*DatacenterSpec) DeepCopy

func (in *DatacenterSpec) DeepCopy() *DatacenterSpec

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

func (*DatacenterSpec) DeepCopyInto

func (in *DatacenterSpec) DeepCopyInto(out *DatacenterSpec)

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

type DatacenterSpecAWS

type DatacenterSpecAWS struct {
	// The AWS region to use, e.g. "us-east-1". For a list of available regions, see
	// https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html
	Region string `json:"region"`

	// List of AMIs to use for a given operating system.
	// This gets defaulted by querying for the latest AMI for the given distribution
	// when machines are created, so under normal circumstances it is not necessary
	// to define the AMIs statically.
	Images ImageList `json:"images"`
}

DatacenterSpecAWS describes an AWS datacenter.

func (*DatacenterSpecAWS) DeepCopy

func (in *DatacenterSpecAWS) DeepCopy() *DatacenterSpecAWS

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

func (*DatacenterSpecAWS) DeepCopyInto

func (in *DatacenterSpecAWS) DeepCopyInto(out *DatacenterSpecAWS)

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

type DatacenterSpecAlibaba

type DatacenterSpecAlibaba struct {
	// Region to use, for a full list of regions see
	// https://www.alibabacloud.com/help/doc-detail/40654.htm
	Region string `json:"region"`
}

DatacenterSpecAlibaba describes a alibaba datacenter.

func (*DatacenterSpecAlibaba) DeepCopy

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

func (*DatacenterSpecAlibaba) DeepCopyInto

func (in *DatacenterSpecAlibaba) DeepCopyInto(out *DatacenterSpecAlibaba)

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

type DatacenterSpecAnexia added in v2.16.3

type DatacenterSpecAnexia struct {
	// LocationID the location of the region
	LocationID string `json:"location_id"`
}

DatacenterSpecAnexia describes a anexia datacenter.

func (*DatacenterSpecAnexia) DeepCopy added in v2.16.3

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

func (*DatacenterSpecAnexia) DeepCopyInto added in v2.16.3

func (in *DatacenterSpecAnexia) DeepCopyInto(out *DatacenterSpecAnexia)

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

type DatacenterSpecAzure

type DatacenterSpecAzure struct {
	// Region to use, for example "westeurope". A list of available regions can be
	// found at https://azure.microsoft.com/en-us/global-infrastructure/locations/
	Location string `json:"location"`
}

DatacenterSpecAzure describes an Azure cloud datacenter.

func (*DatacenterSpecAzure) DeepCopy

func (in *DatacenterSpecAzure) DeepCopy() *DatacenterSpecAzure

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

func (*DatacenterSpecAzure) DeepCopyInto

func (in *DatacenterSpecAzure) DeepCopyInto(out *DatacenterSpecAzure)

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

type DatacenterSpecBringYourOwn

type DatacenterSpecBringYourOwn struct {
}

DatacenterSpecBringYourOwn describes a datacenter our of bring your own nodes.

func (*DatacenterSpecBringYourOwn) DeepCopy

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

func (*DatacenterSpecBringYourOwn) DeepCopyInto

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

type DatacenterSpecDigitalocean

type DatacenterSpecDigitalocean struct {
	// Datacenter location, e.g. "ams3". A list of existing datacenters can be found
	// at https://www.digitalocean.com/docs/platform/availability-matrix/
	Region string `json:"region"`
}

DatacenterSpecDigitalocean describes a DigitalOcean datacenter.

func (*DatacenterSpecDigitalocean) DeepCopy

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

func (*DatacenterSpecDigitalocean) DeepCopyInto

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

type DatacenterSpecFake

type DatacenterSpecFake struct {
	FakeProperty string `json:"fake_property,omitempty"`
}

DatacenterSpecFake describes a fake datacenter.

func (*DatacenterSpecFake) DeepCopy

func (in *DatacenterSpecFake) DeepCopy() *DatacenterSpecFake

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

func (*DatacenterSpecFake) DeepCopyInto

func (in *DatacenterSpecFake) DeepCopyInto(out *DatacenterSpecFake)

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

type DatacenterSpecGCP

type DatacenterSpecGCP struct {
	// Region to use, for example "europe-west3", for a full list of regions see
	// https://cloud.google.com/compute/docs/regions-zones/
	Region string `json:"region"`
	// List of enabled zones, for example [a, c]. See the link above for the available
	// zones in your chosen region.
	ZoneSuffixes []string `json:"zone_suffixes"`

	// Optional: Regional clusters spread their resources across multiple availability zones.
	// Refer to the official documentation for more details on this:
	// https://cloud.google.com/kubernetes-engine/docs/concepts/regional-clusters
	Regional bool `json:"regional,omitempty"`
}

DatacenterSpecGCP describes a GCP datacenter.

func (*DatacenterSpecGCP) DeepCopy

func (in *DatacenterSpecGCP) DeepCopy() *DatacenterSpecGCP

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

func (*DatacenterSpecGCP) DeepCopyInto

func (in *DatacenterSpecGCP) DeepCopyInto(out *DatacenterSpecGCP)

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

type DatacenterSpecHetzner

type DatacenterSpecHetzner struct {
	// Datacenter location, e.g. "nbg1-dc3". A list of existing datacenters can be found
	// at https://wiki.hetzner.de/index.php/Rechenzentren_und_Anbindung/en
	Datacenter string `json:"datacenter"`
	// Network is the pre-existing Hetzner network in which the machines are running.
	// While machines can be in multiple networks, a single one must be chosen for the
	// HCloud CCM to work.
	Network string `json:"network"`
	// Optional: Detailed location of the datacenter, like "Hamburg" or "Datacenter 7".
	// For informational purposes only.
	Location string `json:"location"`
}

DatacenterSpecHetzner describes a Hetzner cloud datacenter.

func (*DatacenterSpecHetzner) DeepCopy

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

func (*DatacenterSpecHetzner) DeepCopyInto

func (in *DatacenterSpecHetzner) DeepCopyInto(out *DatacenterSpecHetzner)

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

type DatacenterSpecKubevirt

type DatacenterSpecKubevirt struct {
	// DNSPolicy represents the dns policy for the pod. Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst',
	// 'Default' or 'None'. Defaults to "ClusterFirst". DNS parameters given in DNSConfig will be merged with the
	// policy selected with DNSPolicy.
	DNSPolicy string `json:"dns_policy,omitempty"`

	// DNSConfig represents the DNS parameters of a pod. Parameters specified here will be merged to the generated DNS
	// configuration based on DNSPolicy.
	DNSConfig *corev1.PodDNSConfig `json:"dns_config,omitempty"`
}

DatacenterSpecKubevirt describes a kubevirt datacenter.

func (*DatacenterSpecKubevirt) DeepCopy

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

func (*DatacenterSpecKubevirt) DeepCopyInto

func (in *DatacenterSpecKubevirt) DeepCopyInto(out *DatacenterSpecKubevirt)

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

type DatacenterSpecNutanix added in v2.19.0

type DatacenterSpecNutanix struct {
	// Endpoint to use for accessing Nutanix Prism Central. No protocol or port should be passed,
	// for example "nutanix.example.com" or "10.0.0.1"
	Endpoint string `json:"endpoint"`
	// Optional: Port to use when connecting to the Nutanix Prism Central endpoint (defaults to 9440)
	Port *int32 `json:"port,omitempty"`
	// Optional: AllowInsecure allows to disable the TLS certificate check against the endpoint (defaults to false)
	AllowInsecure bool `json:"allow_insecure"`
	// Images to use for each supported operating system
	Images ImageList `json:"images"`
}

DatacenterSpecNutanix describes a Nutanix datacenter. NUTANIX IMPLEMENTATION IS EXPERIMENTAL AND UNSUPPORTED.

func (*DatacenterSpecNutanix) DeepCopy added in v2.19.0

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

func (*DatacenterSpecNutanix) DeepCopyInto added in v2.19.0

func (in *DatacenterSpecNutanix) DeepCopyInto(out *DatacenterSpecNutanix)

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

type DatacenterSpecOpenstack

type DatacenterSpecOpenstack struct {
	AuthURL          string `json:"auth_url"`
	AvailabilityZone string `json:"availability_zone"`
	Region           string `json:"region"`
	// Optional
	IgnoreVolumeAZ bool `json:"ignore_volume_az"`
	// Optional
	EnforceFloatingIP bool `json:"enforce_floating_ip"`
	// Used for automatic network creation
	DNSServers []string `json:"dns_servers"`
	// Images to use for each supported operating system.
	Images ImageList `json:"images"`
	// Optional: Gets mapped to the "manage-security-groups" setting in the cloud config.
	// See https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#load-balancer
	// This setting defaults to true.
	ManageSecurityGroups *bool `json:"manage_security_groups"`
	// Optional: Gets mapped to the "use-octavia" setting in the cloud config.
	// use-octavia is enabled by default in CCM since v1.17.0, and disabled by
	// default with the in-tree cloud provider.
	UseOctavia *bool `json:"use_octavia"`
	// Optional: Gets mapped to the "trust-device-path" setting in the cloud config.
	// See https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#block-storage
	// This setting defaults to false.
	TrustDevicePath      *bool                         `json:"trust_device_path"`
	NodeSizeRequirements OpenstackNodeSizeRequirements `json:"node_size_requirements"`
	// Optional: List of enabled flavors for the given datacenter
	EnabledFlavors []string `json:"enabled_flavors"`
}

DatacenterSpecOpenstack describes an OpenStack datacenter.

func (*DatacenterSpecOpenstack) DeepCopy

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

func (*DatacenterSpecOpenstack) DeepCopyInto

func (in *DatacenterSpecOpenstack) DeepCopyInto(out *DatacenterSpecOpenstack)

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

type DatacenterSpecPacket

type DatacenterSpecPacket struct {
	// The list of enabled facilities, for example "ams1", for a full list of available
	// facilities see https://support.packet.com/kb/articles/data-centers
	Facilities []string `json:"facilities"`
}

DatacenterSpecPacket describes a Packet datacenter.

func (*DatacenterSpecPacket) DeepCopy

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

func (*DatacenterSpecPacket) DeepCopyInto

func (in *DatacenterSpecPacket) DeepCopyInto(out *DatacenterSpecPacket)

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

type DatacenterSpecVSphere

type DatacenterSpecVSphere struct {
	// Endpoint URL to use, including protocol, for example "https://vcenter.example.com".
	Endpoint string `json:"endpoint"`
	// If set to true, disables the TLS certificate check against the endpoint.
	AllowInsecure bool `json:"allow_insecure"`
	// The default Datastore to be used for provisioning volumes using storage
	// classes/dynamic provisioning and for storing virtual machine files in
	// case no `Datastore` or `DatastoreCluster` is provided at Cluster level.
	DefaultDatastore string `json:"datastore"`
	// The name of the datacenter to use.
	Datacenter string `json:"datacenter"`
	// Optional: The name of the vSphere cluster to use.
	// Cluster is deprecated and may be removed in future releases as it is
	// currently ignored.
	// The cluster hosting the VMs will be the same VM used as a template is
	// located.
	Cluster string `json:"cluster"`
	// The name of the storage policy to use for the storage class created in the user cluster.
	DefaultStoragePolicy string `json:"storage_policy"`
	// Optional: The root path for cluster specific VM folders. Each cluster gets its own
	// folder below the root folder. Must be the FQDN (for example
	// "/datacenter-1/vm/all-kubermatic-vms-in-here") and defaults to the root VM
	// folder: "/datacenter-1/vm"
	RootPath string `json:"root_path"`
	// A list of VM templates to use for a given operating system. You must
	// define at least one template.
	// See: https://github.com/kubermatic/machine-controller/blob/master/docs/vsphere.md#template-vms-preparation
	Templates ImageList `json:"templates"`
	// Optional: Infra management user is the user that will be used for everything
	// except the cloud provider functionality, which will still use the credentials
	// passed in via the Kubermatic dashboard/API.
	InfraManagementUser *VSphereCredentials `json:"infra_management_user,omitempty"`
}

DatacenterSpecVSphere describes a vSphere datacenter.

func (*DatacenterSpecVSphere) DeepCopy

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

func (*DatacenterSpecVSphere) DeepCopyInto

func (in *DatacenterSpecVSphere) DeepCopyInto(out *DatacenterSpecVSphere)

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

type DeploymentSettings

type DeploymentSettings struct {
	Replicas    *int32                       `json:"replicas,omitempty"`
	Resources   *corev1.ResourceRequirements `json:"resources,omitempty"`
	Tolerations []corev1.Toleration          `json:"tolerations,omitempty"`
}

func (*DeploymentSettings) DeepCopy

func (in *DeploymentSettings) DeepCopy() *DeploymentSettings

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

func (*DeploymentSettings) DeepCopyInto

func (in *DeploymentSettings) DeepCopyInto(out *DeploymentSettings)

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

type Digitalocean

type Digitalocean struct {
	ProviderPreset `json:",inline"`

	// Token is used to authenticate with the DigitalOcean API.
	Token string `json:"token"`
}

func (*Digitalocean) DeepCopy

func (in *Digitalocean) DeepCopy() *Digitalocean

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

func (*Digitalocean) DeepCopyInto

func (in *Digitalocean) DeepCopyInto(out *Digitalocean)

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

func (Digitalocean) IsValid added in v2.16.3

func (s Digitalocean) IsValid() bool

type DigitaloceanCloudSpec

type DigitaloceanCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	Token string `json:"token,omitempty"` // Token is used to authenticate with the DigitalOcean API.
}

DigitaloceanCloudSpec specifies access data to DigitalOcean.

func (*DigitaloceanCloudSpec) DeepCopy

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

func (*DigitaloceanCloudSpec) DeepCopyInto

func (in *DigitaloceanCloudSpec) DeepCopyInto(out *DigitaloceanCloudSpec)

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

type EKS added in v2.19.0

type EKS struct {
	ProviderPreset `json:",inline"`

	AccessKeyID     string `json:"accessKeyId"`
	SecretAccessKey string `json:"secretAccessKey"`
	Region          string `json:"region"`
}

func (*EKS) DeepCopy added in v2.19.0

func (in *EKS) DeepCopy() *EKS

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

func (*EKS) DeepCopyInto added in v2.19.0

func (in *EKS) DeepCopyInto(out *EKS)

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

func (EKS) IsValid added in v2.19.0

func (s EKS) IsValid() bool

type EtcdBackupConfig added in v2.17.0

type EtcdBackupConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   EtcdBackupConfigSpec   `json:"spec"`
	Status EtcdBackupConfigStatus `json:"status,omitempty"`
}

EtcdBackupConfig specifies a add-on +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*EtcdBackupConfig) DeepCopy added in v2.17.0

func (in *EtcdBackupConfig) DeepCopy() *EtcdBackupConfig

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

func (*EtcdBackupConfig) DeepCopyInto added in v2.17.0

func (in *EtcdBackupConfig) DeepCopyInto(out *EtcdBackupConfig)

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

func (*EtcdBackupConfig) DeepCopyObject added in v2.17.0

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

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

func (*EtcdBackupConfig) GetKeptBackupsCount added in v2.17.0

func (bc *EtcdBackupConfig) GetKeptBackupsCount() int

type EtcdBackupConfigCondition added in v2.17.0

type EtcdBackupConfigCondition struct {
	// Type of EtcdBackupConfig condition.
	Type EtcdBackupConfigConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time we got an update on a given condition.
	// +optional
	LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty"`
	// Last time the condition transit from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// (brief) reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Human readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

func (*EtcdBackupConfigCondition) DeepCopy added in v2.17.0

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

func (*EtcdBackupConfigCondition) DeepCopyInto added in v2.17.0

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

type EtcdBackupConfigConditionType added in v2.17.0

type EtcdBackupConfigConditionType string

EtcdBackupConfigConditionType is used to indicate the type of a EtcdBackupConfig condition. For all condition types, the `true` value must indicate success. All condition types must be registered within the `AllClusterConditionTypes` variable.

const (
	// EtcdBackupConfigConditionSchedulingActive indicates that the EtcdBackupConfig is active, i.e.
	// new backups are being scheduled according to the config's schedule.
	EtcdBackupConfigConditionSchedulingActive EtcdBackupConfigConditionType = "SchedulingActive"
)

type EtcdBackupConfigList added in v2.17.0

type EtcdBackupConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []EtcdBackupConfig `json:"items"`
}

EtcdBackupConfigList is a list of etcd backup configs +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*EtcdBackupConfigList) DeepCopy added in v2.17.0

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

func (*EtcdBackupConfigList) DeepCopyInto added in v2.17.0

func (in *EtcdBackupConfigList) DeepCopyInto(out *EtcdBackupConfigList)

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

func (*EtcdBackupConfigList) DeepCopyObject added in v2.17.0

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

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

type EtcdBackupConfigSpec added in v2.17.0

type EtcdBackupConfigSpec struct {
	// Name defines the name of the backup
	// The name of the backup file in S3 will be <cluster>-<backup name>
	// If a schedule is set (see below), -<timestamp> will be appended.
	Name string `json:"name"`
	// Cluster is the reference to the cluster whose etcd will be backed up
	Cluster corev1.ObjectReference `json:"cluster"`
	// Schedule is a cron expression defining when to perform
	// the backup. If not set, the backup is performed exactly
	// once, immediately.
	Schedule string `json:"schedule,omitempty"`
	// Keep is the number of backups to keep around before deleting the oldest one
	// If not set, defaults to DefaultKeptBackupsCount. Only used if Schedule is set.
	Keep *int `json:"keep,omitempty"`
	// Destination indicates where the backup will be stored. The destination name should correspond to a destination in
	// the cluster's Seed.Spec.EtcdBackupRestore. If empty, it will use the legacy destination in Seed.Spec.BackupRestore
	Destination string `json:"destination,omitempty"`
}

EtcdBackupConfigSpec specifies details of an etcd backup.

func (*EtcdBackupConfigSpec) DeepCopy added in v2.17.0

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

func (*EtcdBackupConfigSpec) DeepCopyInto added in v2.17.0

func (in *EtcdBackupConfigSpec) DeepCopyInto(out *EtcdBackupConfigSpec)

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

type EtcdBackupConfigStatus added in v2.17.0

type EtcdBackupConfigStatus struct {
	// CurrentBackups tracks the creation and deletion progress if all backups managed by the EtcdBackupConfig
	CurrentBackups []BackupStatus `json:"lastBackups,omitempty"`
	// Conditions contains conditions of the EtcdBackupConfig
	Conditions []EtcdBackupConfigCondition `json:"conditions,omitempty"`
	// If the controller was configured with a cleanupContainer, CleanupRunning keeps track of the corresponding job
	CleanupRunning bool `json:"cleanupRunning,omitempty"`
}

func (*EtcdBackupConfigStatus) DeepCopy added in v2.17.0

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

func (*EtcdBackupConfigStatus) DeepCopyInto added in v2.17.0

func (in *EtcdBackupConfigStatus) DeepCopyInto(out *EtcdBackupConfigStatus)

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

type EtcdBackupRestore added in v2.19.0

type EtcdBackupRestore struct {
	// Destinations stores all the possible destinations where the backups for the Seed can be stored. If not empty,
	// it enables automatic backup and restore for the seed.
	Destinations map[string]*BackupDestination `json:"destinations,omitempty"`
	// DefaultDestination Optional setting which marks the default destination that will be used for the default etcd backup config which is
	// created for every user cluster. If not set, the default etcd backup config won't be created (unless the legacy Seed.Spec.BackupRestore is used).
	// Has to correspond to a destination in Destinations.
	// If removed, it removes the related default etcd backup configs.
	DefaultDestination *string `json:"defaultDestination,omitempty"`
}

EtcdBackupRestore holds the configuration of the automatic backup restores.

func (*EtcdBackupRestore) DeepCopy added in v2.19.0

func (in *EtcdBackupRestore) DeepCopy() *EtcdBackupRestore

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

func (*EtcdBackupRestore) DeepCopyInto added in v2.19.0

func (in *EtcdBackupRestore) DeepCopyInto(out *EtcdBackupRestore)

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

type EtcdRestore added in v2.17.0

type EtcdRestore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   EtcdRestoreSpec   `json:"spec"`
	Status EtcdRestoreStatus `json:"status,omitempty"`
}

EtcdRestore specifies a add-on +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*EtcdRestore) DeepCopy added in v2.17.0

func (in *EtcdRestore) DeepCopy() *EtcdRestore

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

func (*EtcdRestore) DeepCopyInto added in v2.17.0

func (in *EtcdRestore) DeepCopyInto(out *EtcdRestore)

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

func (*EtcdRestore) DeepCopyObject added in v2.17.0

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

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

type EtcdRestoreList added in v2.17.0

type EtcdRestoreList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []EtcdRestore `json:"items"`
}

EtcdRestoreList is a list of etcd restores +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*EtcdRestoreList) DeepCopy added in v2.17.0

func (in *EtcdRestoreList) DeepCopy() *EtcdRestoreList

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

func (*EtcdRestoreList) DeepCopyInto added in v2.17.0

func (in *EtcdRestoreList) DeepCopyInto(out *EtcdRestoreList)

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

func (*EtcdRestoreList) DeepCopyObject added in v2.17.0

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

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

type EtcdRestorePhase added in v2.17.0

type EtcdRestorePhase string

EtcdRestorePhase represents the lifecycle phase of an EtcdRestore.

type EtcdRestoreSpec added in v2.17.0

type EtcdRestoreSpec struct {
	// Name defines the name of the restore
	// The name of the restore file in S3 will be <cluster>-<restore name>
	// If a schedule is set (see below), -<timestamp> will be appended.
	Name string `json:"name"`
	// Cluster is the reference to the cluster whose etcd will be backed up
	Cluster corev1.ObjectReference `json:"cluster"`
	// BackupName is the name of the backup to restore from
	BackupName string `json:"backupName"`
	// BackupDownloadCredentialsSecret is the name of a secret in the cluster-xxx namespace containing
	// credentials needed to download the backup
	BackupDownloadCredentialsSecret string `json:"backupDownloadCredentialsSecret,omitempty"`
	// Destination indicates where the backup was stored. The destination name should correspond to a destination in
	// the cluster's Seed.Spec.EtcdBackupRestore. If empty, it will use the legacy destination configured in Seed.Spec.BackupRestore
	Destination string `json:"destination,omitempty"`
}

EtcdRestoreSpec specifies details of an etcd restore.

func (*EtcdRestoreSpec) DeepCopy added in v2.17.0

func (in *EtcdRestoreSpec) DeepCopy() *EtcdRestoreSpec

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

func (*EtcdRestoreSpec) DeepCopyInto added in v2.17.0

func (in *EtcdRestoreSpec) DeepCopyInto(out *EtcdRestoreSpec)

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

type EtcdRestoreStatus added in v2.17.0

type EtcdRestoreStatus struct {
	Phase       EtcdRestorePhase `json:"phase"`
	RestoreTime *metav1.Time     `json:"restoreTime,omitempty"`
}

func (*EtcdRestoreStatus) DeepCopy added in v2.17.0

func (in *EtcdRestoreStatus) DeepCopy() *EtcdRestoreStatus

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

func (*EtcdRestoreStatus) DeepCopyInto added in v2.17.0

func (in *EtcdRestoreStatus) DeepCopyInto(out *EtcdRestoreStatus)

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

type EtcdStatefulSetSettings

type EtcdStatefulSetSettings struct {
	ClusterSize  *int32                       `json:"clusterSize,omitempty"`
	StorageClass string                       `json:"storageClass,omitempty"`
	DiskSize     *resource.Quantity           `json:"diskSize,omitempty"`
	Resources    *corev1.ResourceRequirements `json:"resources,omitempty"`
	Tolerations  []corev1.Toleration          `json:"tolerations,omitempty"`
}

func (*EtcdStatefulSetSettings) DeepCopy

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

func (*EtcdStatefulSetSettings) DeepCopyInto

func (in *EtcdStatefulSetSettings) DeepCopyInto(out *EtcdStatefulSetSettings)

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

type EventRateLimitConfig added in v2.19.0

type EventRateLimitConfig struct {
	Server          *EventRateLimitConfigItem `json:"server,omitempty"`
	Namespace       *EventRateLimitConfigItem `json:"namespace,omitempty"`
	User            *EventRateLimitConfigItem `json:"user,omitempty"`
	SourceAndObject *EventRateLimitConfigItem `json:"sourceAndObject,omitempty"`
}

func (*EventRateLimitConfig) DeepCopy added in v2.19.0

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

func (*EventRateLimitConfig) DeepCopyInto added in v2.19.0

func (in *EventRateLimitConfig) DeepCopyInto(out *EventRateLimitConfig)

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

type EventRateLimitConfigItem added in v2.19.0

type EventRateLimitConfigItem struct {
	QPS       int32 `json:"qps"`
	Burst     int32 `json:"burst"`
	CacheSize int32 `json:"cacheSize,omitempty"`
}

func (*EventRateLimitConfigItem) DeepCopy added in v2.19.0

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

func (*EventRateLimitConfigItem) DeepCopyInto added in v2.19.0

func (in *EventRateLimitConfigItem) DeepCopyInto(out *EventRateLimitConfigItem)

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

type ExposeStrategiesSet added in v2.16.3

type ExposeStrategiesSet map[ExposeStrategy]struct{}

ExposeStrategiesSet is a set of ExposeStrategies.

func NewExposeStrategiesSet added in v2.16.3

func NewExposeStrategiesSet(items ...ExposeStrategy) ExposeStrategiesSet

NewByte creates a ExposeStrategiesSet from a list of values.

func (ExposeStrategiesSet) DeepCopy added in v2.16.3

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

func (ExposeStrategiesSet) DeepCopyInto added in v2.16.3

func (in ExposeStrategiesSet) DeepCopyInto(out *ExposeStrategiesSet)

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

func (ExposeStrategiesSet) Has added in v2.16.3

Has returns true if and only if item is contained in the set.

func (ExposeStrategiesSet) Items added in v2.18.0

func (e ExposeStrategiesSet) Items() []string

func (ExposeStrategiesSet) String added in v2.16.3

func (e ExposeStrategiesSet) String() string

Has returns true if and only if item is contained in the set.

type ExposeStrategy added in v2.16.3

type ExposeStrategy string

ExposeStrategy is the strategy to expose the cluster with.

const (
	// ExposeStrategyNodePort creates a NodePort with a "nodeport-proxy.k8s.io/expose": "true" annotation to expose
	// all clusters on one central Service of type LoadBalancer via the NodePort proxy.
	ExposeStrategyNodePort ExposeStrategy = "NodePort"
	// ExposeStrategyLoadBalancer creates a LoadBalancer service per cluster.
	ExposeStrategyLoadBalancer ExposeStrategy = "LoadBalancer"
	// ExposeStrategyTunneling allows to reach the control plane components by
	// tunneling L4 traffic (TCP only is supported at the moment).
	// The traffic is encapsulated by mean of an agent deployed on the worker
	// nodes.
	// The traffic is decapsulated and forwarded to the recipients by
	// mean of a proxy deployed on the Seed Cluster.
	// The same proxy is also capable of routing TLS traffic without
	// termination, this is to allow the Kubelet to reach the control plane
	// before the agents are running.
	//
	// This strategy has the inconvenience of requiring an agent on worker
	// nodes, but has the notable advantage of requiring one single entry point
	// (e.g. Service of type LoadBalancer) without consuming one or more ports
	// for each user cluster.
	ExposeStrategyTunneling ExposeStrategy = "Tunneling"
)

func ExposeStrategyFromString added in v2.16.3

func ExposeStrategyFromString(s string) (ExposeStrategy, bool)

ExposeStrategyFromString returns the expose strategy which String representation corresponds to the input string, and a bool saying whether a match was found or not.

func (ExposeStrategy) String added in v2.16.3

func (e ExposeStrategy) String() string

String returns the string representation of the ExposeStrategy.

type ExtendedClusterHealth

type ExtendedClusterHealth struct {
	Apiserver                    HealthStatus  `json:"apiserver"`
	Scheduler                    HealthStatus  `json:"scheduler"`
	Controller                   HealthStatus  `json:"controller"`
	MachineController            HealthStatus  `json:"machineController"`
	Etcd                         HealthStatus  `json:"etcd"`
	OpenVPN                      HealthStatus  `json:"openvpn"`
	CloudProviderInfrastructure  HealthStatus  `json:"cloudProviderInfrastructure"`
	UserClusterControllerManager HealthStatus  `json:"userClusterControllerManager"`
	GatekeeperController         *HealthStatus `json:"gatekeeperController,omitempty"`
	GatekeeperAudit              *HealthStatus `json:"gatekeeperAudit,omitempty"`
	Monitoring                   *HealthStatus `json:"monitoring,omitempty"`
	Logging                      *HealthStatus `json:"logging,omitempty"`
	AlertmanagerConfig           *HealthStatus `json:"alertmanagerConfig,omitempty"`
	MLAGateway                   *HealthStatus `json:"mlaGateway,omitempty"`
}

ExtendedClusterHealth stores health information of a cluster.

func (*ExtendedClusterHealth) AllHealthy

func (h *ExtendedClusterHealth) AllHealthy() bool

AllHealthy returns if all components are healthy. Gatekeeper components not included as they are optional and not crucial for cluster functioning.

func (*ExtendedClusterHealth) DeepCopy

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

func (*ExtendedClusterHealth) DeepCopyInto

func (in *ExtendedClusterHealth) DeepCopyInto(out *ExtendedClusterHealth)

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

type ExternalCluster

type ExternalCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ExternalClusterSpec `json:"spec"`
}

ExternalCluster is the object representing an external kubernetes cluster.

func (*ExternalCluster) DeepCopy

func (in *ExternalCluster) DeepCopy() *ExternalCluster

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

func (*ExternalCluster) DeepCopyInto

func (in *ExternalCluster) DeepCopyInto(out *ExternalCluster)

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

func (*ExternalCluster) DeepCopyObject

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

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

func (*ExternalCluster) GetCredentialsSecretName added in v2.19.0

func (i *ExternalCluster) GetCredentialsSecretName() string

func (*ExternalCluster) GetKubeconfigSecretName

func (i *ExternalCluster) GetKubeconfigSecretName() string

type ExternalClusterAKSCloudSpec added in v2.19.0

type ExternalClusterAKSCloudSpec struct {
	Name                 string                                  `json:"name"`
	TenantID             string                                  `json:"tenantID"`
	SubscriptionID       string                                  `json:"subscriptionID"`
	ClientID             string                                  `json:"clientID"`
	ClientSecret         string                                  `json:"clientSecret"`
	ResourceGroup        string                                  `json:"resourceGroup"`
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference"`
}

func (*ExternalClusterAKSCloudSpec) DeepCopy added in v2.19.0

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

func (*ExternalClusterAKSCloudSpec) DeepCopyInto added in v2.19.0

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

type ExternalClusterCloudSpec added in v2.19.0

type ExternalClusterCloudSpec struct {
	GKE *ExternalClusterGKECloudSpec `json:"gke,omitempty"`
	EKS *ExternalClusterEKSCloudSpec `json:"eks,omitempty"`
	AKS *ExternalClusterAKSCloudSpec `json:"aks,omitempty"`
}

ExternalClusterCloudSpec mutually stores access data to a cloud provider.

func (*ExternalClusterCloudSpec) DeepCopy added in v2.19.0

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

func (*ExternalClusterCloudSpec) DeepCopyInto added in v2.19.0

func (in *ExternalClusterCloudSpec) DeepCopyInto(out *ExternalClusterCloudSpec)

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

type ExternalClusterEKSCloudSpec added in v2.19.0

type ExternalClusterEKSCloudSpec struct {
	Name                 string                                  `json:"name"`
	AccessKeyID          string                                  `json:"accessKeyID"`
	SecretAccessKey      string                                  `json:"secretAccessKey"`
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference"`
	Region               string                                  `json:"region"`
}

func (*ExternalClusterEKSCloudSpec) DeepCopy added in v2.19.0

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

func (*ExternalClusterEKSCloudSpec) DeepCopyInto added in v2.19.0

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

type ExternalClusterGKECloudSpec added in v2.19.0

type ExternalClusterGKECloudSpec struct {
	Name                 string                                  `json:"name"`
	ServiceAccount       string                                  `json:"serviceAccount"`
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`
	Zone                 string                                  `json:"zone"`
}

func (*ExternalClusterGKECloudSpec) DeepCopy added in v2.19.0

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

func (*ExternalClusterGKECloudSpec) DeepCopyInto added in v2.19.0

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

type ExternalClusterList

type ExternalClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ExternalCluster `json:"items"`
}

ExternalClusterList specifies a list of external kubernetes clusters.

func (*ExternalClusterList) DeepCopy

func (in *ExternalClusterList) DeepCopy() *ExternalClusterList

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

func (*ExternalClusterList) DeepCopyInto

func (in *ExternalClusterList) DeepCopyInto(out *ExternalClusterList)

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

func (*ExternalClusterList) DeepCopyObject

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

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

type ExternalClusterSpec

type ExternalClusterSpec struct {

	// HumanReadableName is the cluster name provided by the user
	HumanReadableName string `json:"humanReadableName"`

	KubeconfigReference *providerconfig.GlobalSecretKeySelector `json:"kubeconfigReference,omitempty"`
	CloudSpec           *ExternalClusterCloudSpec               `json:"cloudSpec,omitempty"`
}

ExternalClusterSpec specifies the data for a new external kubernetes cluster.

func (*ExternalClusterSpec) DeepCopy

func (in *ExternalClusterSpec) DeepCopy() *ExternalClusterSpec

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

func (*ExternalClusterSpec) DeepCopyInto

func (in *ExternalClusterSpec) DeepCopyInto(out *ExternalClusterSpec)

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

type Fake

type Fake struct {
	ProviderPreset `json:",inline"`

	Token string `json:"token"`
}

func (*Fake) DeepCopy

func (in *Fake) DeepCopy() *Fake

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

func (*Fake) DeepCopyInto

func (in *Fake) DeepCopyInto(out *Fake)

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

func (Fake) IsValid added in v2.16.3

func (s Fake) IsValid() bool

type FakeCloudSpec

type FakeCloudSpec struct {
	Token string `json:"token,omitempty"`
}

FakeCloudSpec specifies access data for a fake cloud.

func (*FakeCloudSpec) DeepCopy

func (in *FakeCloudSpec) DeepCopy() *FakeCloudSpec

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

func (*FakeCloudSpec) DeepCopyInto

func (in *FakeCloudSpec) DeepCopyInto(out *FakeCloudSpec)

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

type GCP

type GCP struct {
	ProviderPreset `json:",inline"`

	ServiceAccount string `json:"serviceAccount"`

	Network    string `json:"network,omitempty"`
	Subnetwork string `json:"subnetwork,omitempty"`
}

func (*GCP) DeepCopy

func (in *GCP) DeepCopy() *GCP

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

func (*GCP) DeepCopyInto

func (in *GCP) DeepCopyInto(out *GCP)

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

func (GCP) IsValid added in v2.16.3

func (s GCP) IsValid() bool

type GCPCloudSpec

type GCPCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	ServiceAccount string `json:"serviceAccount,omitempty"`
	Network        string `json:"network"`
	Subnetwork     string `json:"subnetwork"`
	// NodePortsAllowedIPRange is the range of addresses allowed to access the cluster nodeports.
	// If not specified, the default value is 0.0.0.0/0, i.e., no restriction.
	NodePortsAllowedIPRange string `json:"nodePortsAllowedIPRange,omitempty"`
}

GCPCloudSpec specifies access data to GCP.

func (*GCPCloudSpec) DeepCopy

func (in *GCPCloudSpec) DeepCopy() *GCPCloudSpec

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

func (*GCPCloudSpec) DeepCopyInto

func (in *GCPCloudSpec) DeepCopyInto(out *GCPCloudSpec)

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

type GKE added in v2.19.0

type GKE struct {
	ProviderPreset `json:",inline"`

	ServiceAccount string `json:"serviceAccount"`
}

func (*GKE) DeepCopy added in v2.19.0

func (in *GKE) DeepCopy() *GKE

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

func (*GKE) DeepCopyInto added in v2.19.0

func (in *GKE) DeepCopyInto(out *GKE)

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

func (GKE) IsValid added in v2.19.0

func (s GKE) IsValid() bool

type HealthStatus

type HealthStatus int
const (
	HealthStatusDown         HealthStatus = iota
	HealthStatusUp           HealthStatus = iota
	HealthStatusProvisioning HealthStatus = iota
)

func (HealthStatus) Ptr added in v2.19.0

func (s HealthStatus) Ptr() *HealthStatus

Ptr is a helper to return a pointer to a literal.

type Hetzner

type Hetzner struct {
	ProviderPreset `json:",inline"`

	// Token is used to authenticate with the Hetzner API.
	Token string `json:"token"`

	// Network is the pre-existing Hetzner network in which the machines are running.
	// While machines can be in multiple networks, a single one must be chosen for the
	// HCloud CCM to work.
	// If this is empty, the network configured on the datacenter will be used.
	Network string `json:"network,omitempty"`
}

func (*Hetzner) DeepCopy

func (in *Hetzner) DeepCopy() *Hetzner

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

func (*Hetzner) DeepCopyInto

func (in *Hetzner) DeepCopyInto(out *Hetzner)

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

func (Hetzner) IsValid added in v2.16.3

func (s Hetzner) IsValid() bool

type HetznerCloudSpec

type HetznerCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	// Token is used to authenticate with the Hetzner cloud API.
	Token string `json:"token,omitempty"`
	// Network is the pre-existing Hetzner network in which the machines are running.
	// While machines can be in multiple networks, a single one must be chosen for the
	// HCloud CCM to work.
	// If this is empty, the network configured on the datacenter will be used.
	Network string `json:"network,omitempty"`
}

HetznerCloudSpec specifies access data to hetzner cloud.

func (*HetznerCloudSpec) DeepCopy

func (in *HetznerCloudSpec) DeepCopy() *HetznerCloudSpec

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

func (*HetznerCloudSpec) DeepCopyInto

func (in *HetznerCloudSpec) DeepCopyInto(out *HetznerCloudSpec)

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

type IPVSConfiguration added in v2.18.0

type IPVSConfiguration struct {
	// StrictArp configure arp_ignore and arp_announce to avoid answering ARP queries from kube-ipvs0 interface.
	// defaults to true.
	StrictArp *bool `json:"strictArp,omitempty"`
}

IPVSConfiguration contains ipvs-related configuration details for kube-proxy.

func (*IPVSConfiguration) DeepCopy added in v2.18.0

func (in *IPVSConfiguration) DeepCopy() *IPVSConfiguration

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

func (*IPVSConfiguration) DeepCopyInto added in v2.18.0

func (in *IPVSConfiguration) DeepCopyInto(out *IPVSConfiguration)

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

type ImageList

ImageList defines a map of operating system and the image to use.

func (ImageList) DeepCopy

func (in ImageList) DeepCopy() ImageList

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

func (ImageList) DeepCopyInto

func (in ImageList) DeepCopyInto(out *ImageList)

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

type KeyCert

type KeyCert struct {
	Key  Bytes `json:"key"`
	Cert Bytes `json:"cert"`
}

KeyCert is a pair of key and cert.

func (*KeyCert) DeepCopy

func (in *KeyCert) DeepCopy() *KeyCert

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

func (*KeyCert) DeepCopyInto

func (in *KeyCert) DeepCopyInto(out *KeyCert)

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

type Kind added in v2.16.3

type Kind struct {
	// Kinds specifies the kinds of the resources
	Kinds []string `json:"kinds,omitempty"`
	// APIGroups specifies the APIGroups of the resources
	APIGroups []string `json:"apiGroups,omitempty"`
}

Kind specifies the resource Kind and APIGroup.

func (*Kind) DeepCopy added in v2.16.3

func (in *Kind) DeepCopy() *Kind

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

func (*Kind) DeepCopyInto added in v2.16.3

func (in *Kind) DeepCopyInto(out *Kind)

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

type KubermaticSetting

type KubermaticSetting struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec SettingSpec `json:"spec"`
}

KubermaticSetting is the type representing a KubermaticSetting.

func (*KubermaticSetting) DeepCopy

func (in *KubermaticSetting) DeepCopy() *KubermaticSetting

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

func (*KubermaticSetting) DeepCopyInto

func (in *KubermaticSetting) DeepCopyInto(out *KubermaticSetting)

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

func (*KubermaticSetting) DeepCopyObject

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

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

type KubermaticSettingList

type KubermaticSettingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []KubermaticSetting `json:"items"`
}

KubermaticSettingList is a list of settings.

func (*KubermaticSettingList) DeepCopy

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

func (*KubermaticSettingList) DeepCopyInto

func (in *KubermaticSettingList) DeepCopyInto(out *KubermaticSettingList)

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

func (*KubermaticSettingList) DeepCopyObject

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

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

type Kubevirt

type Kubevirt struct {
	ProviderPreset `json:",inline"`

	Kubeconfig string `json:"kubeconfig"`
}

func (*Kubevirt) DeepCopy

func (in *Kubevirt) DeepCopy() *Kubevirt

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

func (*Kubevirt) DeepCopyInto

func (in *Kubevirt) DeepCopyInto(out *Kubevirt)

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

func (Kubevirt) IsValid added in v2.16.3

func (s Kubevirt) IsValid() bool

type KubevirtCloudSpec

type KubevirtCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	Kubeconfig string `json:"kubeconfig,omitempty"`
}

KubevirtCloudSpec specifies the access data to Kubevirt.

func (*KubevirtCloudSpec) DeepCopy

func (in *KubevirtCloudSpec) DeepCopy() *KubevirtCloudSpec

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

func (*KubevirtCloudSpec) DeepCopyInto

func (in *KubevirtCloudSpec) DeepCopyInto(out *KubevirtCloudSpec)

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

type LBSKU added in v2.17.2

type LBSKU string

type LeaderElectionSettings

type LeaderElectionSettings struct {
	// LeaseDurationSeconds is the duration in seconds that non-leader candidates
	// will wait to force acquire leadership. This is measured against time of
	// last observed ack.
	// +optional
	LeaseDurationSeconds *int32 `json:"leaseDurationSeconds,omitempty"`
	// RenewDeadlineSeconds is the duration in seconds that the acting controlplane
	// will retry refreshing leadership before giving up.
	// +optional
	RenewDeadlineSeconds *int32 `json:"renewDeadlineSeconds,omitempty"`
	// RetryPeriodSeconds is the duration in seconds the LeaderElector clients
	// should wait between tries of actions.
	// +optional
	RetryPeriodSeconds *int32 `json:"retryPeriodSeconds,omitempty"`
}

func (*LeaderElectionSettings) DeepCopy

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

func (*LeaderElectionSettings) DeepCopyInto

func (in *LeaderElectionSettings) DeepCopyInto(out *LeaderElectionSettings)

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

type LoggingRateLimitSettings added in v2.18.0

type LoggingRateLimitSettings struct {
	// IngestionRate represents ingestion rate limit in requests per second (nginx `rate` in `r/s`).
	IngestionRate int32 `json:"ingestionRate,omitempty"`
	// IngestionBurstSize represents ingestion burst size in number of requests (nginx `burst`).
	IngestionBurstSize int32 `json:"ingestionBurstSize,omitempty"` //

	// QueryRate represents query request rate limit per second (nginx `rate` in `r/s`).
	QueryRate int32 `json:"queryRate,omitempty"`
	// QueryBurstSize represents query burst size in number of requests (nginx `burst`).
	QueryBurstSize int32 `json:"queryBurstSize,omitempty"`
}

LoggingRateLimitSettings contains rate-limiting configuration for logging in the user cluster.

func (*LoggingRateLimitSettings) DeepCopy added in v2.18.0

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

func (*LoggingRateLimitSettings) DeepCopyInto added in v2.18.0

func (in *LoggingRateLimitSettings) DeepCopyInto(out *LoggingRateLimitSettings)

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

type MLAAdminSetting added in v2.18.0

type MLAAdminSetting struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec MLAAdminSettingSpec `json:"spec"`
}

MLAAdminSetting is the object representing cluster-specific administrator settings for KKP user cluster MLA (monitoring, logging & alerting) stack.

func (*MLAAdminSetting) DeepCopy added in v2.18.0

func (in *MLAAdminSetting) DeepCopy() *MLAAdminSetting

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

func (*MLAAdminSetting) DeepCopyInto added in v2.18.0

func (in *MLAAdminSetting) DeepCopyInto(out *MLAAdminSetting)

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

func (*MLAAdminSetting) DeepCopyObject added in v2.18.0

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

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

type MLAAdminSettingList added in v2.18.0

type MLAAdminSettingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []MLAAdminSetting `json:"items"`
}

MLAAdminSettingList specifies a list of administrtor settings for KKP user cluster MLA (monitoring, logging & alerting) stack.

func (*MLAAdminSettingList) DeepCopy added in v2.18.0

func (in *MLAAdminSettingList) DeepCopy() *MLAAdminSettingList

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

func (*MLAAdminSettingList) DeepCopyInto added in v2.18.0

func (in *MLAAdminSettingList) DeepCopyInto(out *MLAAdminSettingList)

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

func (*MLAAdminSettingList) DeepCopyObject added in v2.18.0

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

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

type MLAAdminSettingSpec added in v2.18.0

type MLAAdminSettingSpec struct {
	// ClusterName is the name of the user cluster whose MLA settings are defined in this object.
	ClusterName string `json:"clusterName"`
	// MonitoringRateLimits contains rate-limiting configuration for monitoring in the user cluster.
	MonitoringRateLimits *MonitoringRateLimitSettings `json:"monitoringRateLimits,omitempty"`
	// LoggingRateLimits contains rate-limiting configuration logging in the user cluster.
	LoggingRateLimits *LoggingRateLimitSettings `json:"loggingRateLimits,omitempty"`
}

MLAAdminSettingSpec specifies the cluster-specific administrator settings for KKP user cluster MLA (monitoring, logging & alerting) stack.

func (*MLAAdminSettingSpec) DeepCopy added in v2.18.0

func (in *MLAAdminSettingSpec) DeepCopy() *MLAAdminSettingSpec

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

func (*MLAAdminSettingSpec) DeepCopyInto added in v2.18.0

func (in *MLAAdminSettingSpec) DeepCopyInto(out *MLAAdminSettingSpec)

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

type MLASettings added in v2.17.0

type MLASettings struct {
	// MonitoringEnabled is the flag for enabling monitoring in user cluster.
	MonitoringEnabled bool `json:"monitoringEnabled,omitempty"`
	// LoggingEnabled is the flag for enabling logging in user cluster.
	LoggingEnabled bool `json:"loggingEnabled,omitempty"`
	// MonitoringResources is the resource requirements for user cluster prometheus.
	MonitoringResources *corev1.ResourceRequirements `json:"monitoringResources,omitempty"`
	// LoggingResources is the resource requirements for user cluster promtail.
	LoggingResources *corev1.ResourceRequirements `json:"loggingResources,omitempty"`
	// MonitoringReplicas is the number of desired pods of user cluster prometheus deployment.
	MonitoringReplicas *int32 `json:"monitoringReplicas,omitempty"`
}

func (*MLASettings) DeepCopy added in v2.17.0

func (in *MLASettings) DeepCopy() *MLASettings

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

func (*MLASettings) DeepCopyInto added in v2.17.0

func (in *MLASettings) DeepCopyInto(out *MLASettings)

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

type MachineDeploymentVMResourceQuota added in v2.16.3

type MachineDeploymentVMResourceQuota struct {
	// Minimal number of vCPU
	MinCPU int `json:"minCPU"`
	// Maximal number of vCPU
	MaxCPU int `json:"maxCPU"`
	// Minimal RAM size in GB
	MinRAM int `json:"minRAM"`
	// Maximum RAM size in GB
	MaxRAM int `json:"maxRAM"`

	EnableGPU bool `json:"enableGPU"`
}

func (*MachineDeploymentVMResourceQuota) DeepCopy added in v2.16.3

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

func (*MachineDeploymentVMResourceQuota) DeepCopyInto added in v2.16.3

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

type MachineNetworkingConfig

type MachineNetworkingConfig struct {
	CIDR       string   `json:"cidr"`
	Gateway    string   `json:"gateway"`
	DNSServers []string `json:"dnsServers"`
}

MachineNetworkingConfig specifies the networking parameters used for IPAM.

func (*MachineNetworkingConfig) DeepCopy

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

func (*MachineNetworkingConfig) DeepCopyInto

func (in *MachineNetworkingConfig) DeepCopyInto(out *MachineNetworkingConfig)

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

type Match added in v2.16.3

type Match struct {
	// Kinds accepts a list of objects with apiGroups and kinds fields that list the groups/kinds of objects to which
	// the constraint will apply. If multiple groups/kinds objects are specified, only one match is needed for the resource to be in scope
	Kinds []Kind `json:"kinds,omitempty"`
	// Scope accepts *, Cluster, or Namespaced which determines if cluster-scoped and/or namesapced-scoped resources are selected. (defaults to *)
	Scope string `json:"scope,omitempty"`
	// Namespaces is a list of namespace names. If defined, a constraint will only apply to resources in a listed namespace.
	Namespaces []string `json:"namespaces,omitempty"`
	// ExcludedNamespaces is a list of namespace names. If defined, a constraint will only apply to resources not in a listed namespace.
	ExcludedNamespaces []string `json:"excludedNamespaces,omitempty"`
	// LabelSelector is a standard Kubernetes label selector.
	LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"`
	// NamespaceSelector  is a standard Kubernetes namespace selector. If defined, make sure to add Namespaces to your
	// configs.config.gatekeeper.sh object to ensure namespaces are synced into OPA
	NamespaceSelector metav1.LabelSelector `json:"namespaceSelector,omitempty"`
}

Match contains the constraint to resource matching data.

func (*Match) DeepCopy added in v2.16.3

func (in *Match) DeepCopy() *Match

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

func (*Match) DeepCopyInto added in v2.16.3

func (in *Match) DeepCopyInto(out *Match)

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

type MeteringConfigurations added in v2.18.0

type MeteringConfigurations struct {
	Enabled bool `json:"enabled"`
	// StorageClassName is the name of the storage class that the metering tool uses to save processed files before
	// exporting it to s3 bucket. Default value is kubermatic-fast.
	StorageClassName string `json:"storageClassName"`
	// StorageSize is the size of the storage class. Default value is 100Gi.
	StorageSize string `json:"storageSize"`
}

MeteringConfigurations contains all the configurations for the metering tool.

func (*MeteringConfigurations) DeepCopy added in v2.18.0

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

func (*MeteringConfigurations) DeepCopyInto added in v2.18.0

func (in *MeteringConfigurations) DeepCopyInto(out *MeteringConfigurations)

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

type MlaOptions added in v2.18.0

type MlaOptions struct {
	LoggingEnabled     bool `json:"loggingEnabled"`
	LoggingEnforced    bool `json:"loggingEnforced"`
	MonitoringEnabled  bool `json:"monitoringEnabled"`
	MonitoringEnforced bool `json:"monitoringEnforced"`
}

func (*MlaOptions) DeepCopy added in v2.18.0

func (in *MlaOptions) DeepCopy() *MlaOptions

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

func (*MlaOptions) DeepCopyInto added in v2.18.0

func (in *MlaOptions) DeepCopyInto(out *MlaOptions)

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

type MonitoringRateLimitSettings added in v2.18.0

type MonitoringRateLimitSettings struct {
	// IngestionRate represents the ingestion rate limit in samples per second (Cortex `ingestion_rate`).
	IngestionRate int32 `json:"ingestionRate,omitempty"`
	// IngestionBurstSize represents ingestion burst size in samples per second (Cortex `ingestion_burst_size`).
	IngestionBurstSize int32 `json:"ingestionBurstSize,omitempty"`
	// MaxSeriesPerMetric represents maximum number of series per metric (Cortex `max_series_per_metric`).
	MaxSeriesPerMetric int32 `json:"maxSeriesPerMetric,omitempty"`
	// MaxSeriesTotal represents maximum number of series per this user cluster (Cortex `max_series_per_user`).
	MaxSeriesTotal int32 `json:"maxSeriesTotal,omitempty"`

	// QueryRate represents  query request rate limit per second (nginx `rate` in `r/s`).
	QueryRate int32 `json:"queryRate,omitempty"`
	// QueryBurstSize represents query burst size in number of requests (nginx `burst`).
	QueryBurstSize int32 `json:"queryBurstSize,omitempty"`
	// MaxSamplesPerQuery represents maximum number of samples during a query (Cortex `max_samples_per_query`).
	MaxSamplesPerQuery int32 `json:"maxSamplesPerQuery,omitempty"`
	// MaxSeriesPerQuery represents maximum number of timeseries during a query (Cortex `max_series_per_query`).
	MaxSeriesPerQuery int32 `json:"maxSeriesPerQuery,omitempty"`
}

MonitoringRateLimitSettings contains rate-limiting configuration for monitoring in the user cluster.

func (*MonitoringRateLimitSettings) DeepCopy added in v2.18.0

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

func (*MonitoringRateLimitSettings) DeepCopyInto added in v2.18.0

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

type NetworkRanges

type NetworkRanges struct {
	CIDRBlocks []string `json:"cidrBlocks"`
}

NetworkRanges represents ranges of network addresses.

func (*NetworkRanges) DeepCopy

func (in *NetworkRanges) DeepCopy() *NetworkRanges

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

func (*NetworkRanges) DeepCopyInto

func (in *NetworkRanges) DeepCopyInto(out *NetworkRanges)

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

type NodeSettings

type NodeSettings struct {
	// Optional: Proxy settings for the Nodes in this datacenter.
	// Defaults to the Proxy settings of the seed.
	ProxySettings `json:",inline"`
	// Optional: These image registries will be configured as insecure
	// on the container runtime.
	InsecureRegistries []string `json:"insecure_registries,omitempty"`
	// Optional: These image registries will be configured as registry mirrors
	// on the container runtime.
	RegistryMirrors []string `json:"registry_mirrors,omitempty"`
	// Optional: Translates to --pod-infra-container-image on the kubelet.
	// If not set, the kubelet will default it.
	PauseImage string `json:"pause_image,omitempty"`
	// Optional: The hyperkube image to use. Currently only Flatcar
	// makes use of this option.
	HyperkubeImage string `json:"hyperkube_image,omitempty"`
}

NodeSettings are node specific flags which can be configured on datacenter level.

func (*NodeSettings) DeepCopy

func (in *NodeSettings) DeepCopy() *NodeSettings

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

func (*NodeSettings) DeepCopyInto

func (in *NodeSettings) DeepCopyInto(out *NodeSettings)

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

type NodeportProxyComponent

type NodeportProxyComponent struct {
	// DockerRepository is the repository containing the component's image.
	DockerRepository string `json:"docker_repository,omitempty"`
	// Resources describes the requested and maximum allowed CPU/memory usage.
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

func (*NodeportProxyComponent) DeepCopy

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

func (*NodeportProxyComponent) DeepCopyInto

func (in *NodeportProxyComponent) DeepCopyInto(out *NodeportProxyComponent)

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

type NodeportProxyConfig

type NodeportProxyConfig struct {
	// Disable will prevent the Kubermatic Operator from creating a nodeport-proxy
	// setup on the seed cluster. This should only be used if a suitable replacement
	// is installed (like the nodeport-proxy Helm chart).
	Disable bool `json:"disable,omitempty"`
	// Annotations are used to further tweak the LoadBalancer integration with the
	// cloud provider where the seed cluster is running.
	Annotations map[string]string `json:"annotations,omitempty"`
	// Envoy configures the Envoy application itself.
	Envoy NodeportProxyComponent `json:"envoy,omitempty"`
	// EnvoyManager configures the Kubermatic-internal Envoy manager.
	EnvoyManager NodeportProxyComponent `json:"envoy_manager,omitempty"`
	// Updater configures the component responsible for updating the LoadBalancer
	// service.
	Updater NodeportProxyComponent `json:"updater,omitempty"`
}

func (*NodeportProxyConfig) DeepCopy

func (in *NodeportProxyConfig) DeepCopy() *NodeportProxyConfig

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

func (*NodeportProxyConfig) DeepCopyInto

func (in *NodeportProxyConfig) DeepCopyInto(out *NodeportProxyConfig)

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

type Nutanix added in v2.19.0

type Nutanix struct {
	ProviderPreset `json:",inline"`

	ProxyURL string `json:"proxyURL"`
	Username string `json:"username"`
	Password string `json:"password"`

	ClusterName string `json:"clusterName,omitempty"`
	ProjectName string `json:"projectName,omitempty"`
}

func (*Nutanix) DeepCopy added in v2.19.0

func (in *Nutanix) DeepCopy() *Nutanix

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

func (*Nutanix) DeepCopyInto added in v2.19.0

func (in *Nutanix) DeepCopyInto(out *Nutanix)

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

func (Nutanix) IsValid added in v2.19.0

func (s Nutanix) IsValid() bool

type NutanixCloudSpec added in v2.19.0

type NutanixCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	// ClusterName is the Nutanix cluster that this user cluster will be deployed to.
	ClusterName string `json:"clusterName"`

	// ProjectName is the project that this cluster is deployed into. If none is given, no project will be used.
	// +optional
	ProjectName string `json:"projectName,omitempty"`

	ProxyURL string `json:"proxyURL,omitempty"`
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
}

NutanixCloudSpec specifies the access data to Nutanix. NUTANIX IMPLEMENTATION IS EXPERIMENTAL AND UNSUPPORTED.

func (*NutanixCloudSpec) DeepCopy added in v2.19.0

func (in *NutanixCloudSpec) DeepCopy() *NutanixCloudSpec

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

func (*NutanixCloudSpec) DeepCopyInto added in v2.19.0

func (in *NutanixCloudSpec) DeepCopyInto(out *NutanixCloudSpec)

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

type OIDCSettings

type OIDCSettings struct {
	IssuerURL     string `json:"issuerUrl,omitempty"`
	ClientID      string `json:"clientId,omitempty"`
	ClientSecret  string `json:"clientSecret,omitempty"`
	UsernameClaim string `json:"usernameClaim,omitempty"`
	GroupsClaim   string `json:"groupsClaim,omitempty"`
	RequiredClaim string `json:"requiredClaim,omitempty"`
	ExtraScopes   string `json:"extraScopes,omitempty"`
}

func (*OIDCSettings) DeepCopy

func (in *OIDCSettings) DeepCopy() *OIDCSettings

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

func (*OIDCSettings) DeepCopyInto

func (in *OIDCSettings) DeepCopyInto(out *OIDCSettings)

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

type OPAIntegrationSettings added in v2.16.3

type OPAIntegrationSettings struct {
	// Enabled is the flag for enabling OPA integration
	Enabled bool `json:"enabled,omitempty"`
	// WebhookTimeout is the timeout that is set for the gatekeeper validating webhook admission review calls.
	// By default 10 seconds.
	WebhookTimeoutSeconds *int32 `json:"webhookTimeoutSeconds,omitempty"`
	// Enable mutation
	ExperimentalEnableMutation bool `json:"experimentalEnableMutation,omitempty"`
	// ControllerResources is the resource requirements for user cluster gatekeeper controller.
	ControllerResources *corev1.ResourceRequirements `json:"controllerResources,omitempty"`
	// AuditResources is the resource requirements for user cluster gatekeeper audit.
	AuditResources *corev1.ResourceRequirements `json:"auditResources,omitempty"`
}

func (*OPAIntegrationSettings) DeepCopy added in v2.16.3

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

func (*OPAIntegrationSettings) DeepCopyInto added in v2.16.3

func (in *OPAIntegrationSettings) DeepCopyInto(out *OPAIntegrationSettings)

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

type OpaOptions added in v2.17.0

type OpaOptions struct {
	Enabled  bool `json:"enabled"`
	Enforced bool `json:"enforced"`
}

func (*OpaOptions) DeepCopy added in v2.17.0

func (in *OpaOptions) DeepCopy() *OpaOptions

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

func (*OpaOptions) DeepCopyInto added in v2.17.0

func (in *OpaOptions) DeepCopyInto(out *OpaOptions)

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

type Openstack

type Openstack struct {
	ProviderPreset `json:",inline"`

	UseToken bool `json:"useToken,omitempty"`

	ApplicationCredentialID     string `json:"applicationCredentialID,omitempty"`
	ApplicationCredentialSecret string `json:"applicationCredentialSecret,omitempty"`

	Username string `json:"username"`
	Password string `json:"password"`
	Domain   string `json:"domain"`

	Tenant    string `json:"tenant,omitempty"`
	TenantID  string `json:"tenantID,omitempty"`
	Project   string `json:"project,omitempty"`
	ProjectID string `json:"projectID,omitempty"`

	Network        string `json:"network,omitempty"`
	SecurityGroups string `json:"securityGroups,omitempty"`
	FloatingIPPool string `json:"floatingIpPool,omitempty"`
	RouterID       string `json:"routerID,omitempty"`
	SubnetID       string `json:"subnetID,omitempty"`
}

func (*Openstack) DeepCopy

func (in *Openstack) DeepCopy() *Openstack

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

func (*Openstack) DeepCopyInto

func (in *Openstack) DeepCopyInto(out *Openstack)

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

func (Openstack) GetProject added in v2.19.0

func (s Openstack) GetProject() string

GetProject returns the the project if defined otherwise fallback to tenant Deprecated: the tenant auth var is depreciated in openstack. In pkg/apis/kubermatic/v1/preset.go we will only use Project.

func (Openstack) GetProjectId added in v2.19.0

func (s Openstack) GetProjectId() string

GetProjectId returns the the projectID if defined otherwise fallback to tenantID Deprecated: the tenantID auth var is depreciated in openstack. In pkg/apis/kubermatic/v1/preset.go we will only use ProjectID.

func (Openstack) IsValid added in v2.16.3

func (s Openstack) IsValid() bool

type OpenstackCloudSpec

type OpenstackCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	Username                    string `json:"username,omitempty"`
	Password                    string `json:"password,omitempty"`
	Project                     string `json:"project,omitempty"`
	ProjectID                   string `json:"projectID,omitempty"`
	Tenant                      string `json:"tenant,omitempty"`
	TenantID                    string `json:"tenantID,omitempty"`
	Domain                      string `json:"domain,omitempty"`
	ApplicationCredentialID     string `json:"applicationCredentialID,omitempty"`
	ApplicationCredentialSecret string `json:"applicationCredentialSecret,omitempty"`
	UseToken                    bool   `json:"useToken,omitempty"`
	// Used internally during cluster creation
	Token string `json:"token,omitempty"`

	// Network holds the name of the internal network
	// When specified, all worker nodes will be attached to this network. If not specified, a network, subnet & router will be created
	//
	// Note that the network is internal if the "External" field is set to false
	Network        string `json:"network"`
	SecurityGroups string `json:"securityGroups"`
	// NodePortsAllowedIPRange is the range of addresses allowed to access the cluster nodeports.
	// If not specified, the default value is 0.0.0.0/0, i.e., no restriction.
	NodePortsAllowedIPRange string `json:"nodePortsAllowedIPRange,omitempty"`
	// FloatingIPPool holds the name of the public network
	// The public network is reachable from the outside world
	// and should provide the pool of IP addresses to choose from.
	//
	// When specified, all worker nodes will receive a public ip from this floating ip pool
	//
	// Note that the network is external if the "External" field is set to true
	FloatingIPPool string `json:"floatingIpPool"`
	RouterID       string `json:"routerID"`
	SubnetID       string `json:"subnetID"`
	// Whether or not to use Octavia for LoadBalancer type of Service
	// implementation instead of using Neutron-LBaaS.
	// Attention:Openstack CCM use Octavia as default load balancer
	// implementation since v1.17.0
	//
	// Takes precedence over the 'use_octavia' flag provided at datacenter
	// level if both are specified.
	// +optional
	UseOctavia *bool `json:"useOctavia,omitempty"`
}

OpenstackCloudSpec specifies access data to an OpenStack cloud.

func (*OpenstackCloudSpec) DeepCopy

func (in *OpenstackCloudSpec) DeepCopy() *OpenstackCloudSpec

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

func (*OpenstackCloudSpec) DeepCopyInto

func (in *OpenstackCloudSpec) DeepCopyInto(out *OpenstackCloudSpec)

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

func (OpenstackCloudSpec) GetProject added in v2.19.0

func (s OpenstackCloudSpec) GetProject() string

GetProject returns the the project if defined otherwise fallback to tenant Deprecated: the tenant auth var is depreciated in openstack. In pkg/apis/kubermatic/v1/cluster.go we will only use Project.

func (OpenstackCloudSpec) GetProjectId added in v2.19.0

func (s OpenstackCloudSpec) GetProjectId() string

GetProjectId returns the the projectID if defined otherwise fallback to tenantID Deprecated: the tenantID auth var is depreciated in openstack. In pkg/apis/kubermatic/v1/cluster.go we will only use ProjectID.

type OpenstackNodeSizeRequirements

type OpenstackNodeSizeRequirements struct {
	// VCPUs is the minimum required amount of (virtual) CPUs
	MinimumVCPUs int `json:"minimum_vcpus"`
	// MinimumMemory is the minimum required amount of memory, measured in MB
	MinimumMemory int `json:"minimum_memory"`
}

func (*OpenstackNodeSizeRequirements) DeepCopy

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

func (*OpenstackNodeSizeRequirements) DeepCopyInto

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

type Packet

type Packet struct {
	ProviderPreset `json:",inline"`

	APIKey    string `json:"apiKey"`
	ProjectID string `json:"projectId"`

	BillingCycle string `json:"billingCycle,omitempty"`
}

func (*Packet) DeepCopy

func (in *Packet) DeepCopy() *Packet

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

func (*Packet) DeepCopyInto

func (in *Packet) DeepCopyInto(out *Packet)

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

func (Packet) IsValid added in v2.16.3

func (s Packet) IsValid() bool

type PacketCloudSpec

type PacketCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	APIKey       string `json:"apiKey,omitempty"`
	ProjectID    string `json:"projectID,omitempty"`
	BillingCycle string `json:"billingCycle"`
}

PacketCloudSpec specifies access data to a Packet cloud.

func (*PacketCloudSpec) DeepCopy

func (in *PacketCloudSpec) DeepCopy() *PacketCloudSpec

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

func (*PacketCloudSpec) DeepCopyInto

func (in *PacketCloudSpec) DeepCopyInto(out *PacketCloudSpec)

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

type Parameters added in v2.16.3

type Parameters map[string]json.RawMessage

func (Parameters) DeepCopy added in v2.16.3

func (in Parameters) DeepCopy() Parameters

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

func (Parameters) DeepCopyInto added in v2.16.3

func (in Parameters) DeepCopyInto(out *Parameters)

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

type Preset

type Preset struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec PresetSpec `json:"spec"`
}

Preset is the type representing a Preset.

func (*Preset) DeepCopy

func (in *Preset) DeepCopy() *Preset

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

func (*Preset) DeepCopyInto

func (in *Preset) DeepCopyInto(out *Preset)

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

func (*Preset) DeepCopyObject

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

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

type PresetList

type PresetList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// List of presets
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md
	Items []Preset `json:"items" protobuf:"bytes,2,rep,name=items"`
}

PresetList is the type representing a PresetList.

func (*PresetList) DeepCopy

func (in *PresetList) DeepCopy() *PresetList

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

func (*PresetList) DeepCopyInto

func (in *PresetList) DeepCopyInto(out *PresetList)

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

func (*PresetList) DeepCopyObject

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

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

type PresetSpec

type PresetSpec struct {
	Digitalocean *Digitalocean `json:"digitalocean,omitempty"`
	Hetzner      *Hetzner      `json:"hetzner,omitempty"`
	Azure        *Azure        `json:"azure,omitempty"`
	VSphere      *VSphere      `json:"vsphere,omitempty"`
	AWS          *AWS          `json:"aws,omitempty"`
	Openstack    *Openstack    `json:"openstack,omitempty"`
	Packet       *Packet       `json:"packet,omitempty"`
	GCP          *GCP          `json:"gcp,omitempty"`
	Kubevirt     *Kubevirt     `json:"kubevirt,omitempty"`
	Alibaba      *Alibaba      `json:"alibaba,omitempty"`
	Anexia       *Anexia       `json:"anexia,omitempty"`
	Nutanix      *Nutanix      `json:"nutanix,omitempty"`
	GKE          *GKE          `json:"gke,omitempty"`
	EKS          *EKS          `json:"eks,omitempty"`
	AKS          *AKS          `json:"aks,omitempty"`

	Fake *Fake `json:"fake,omitempty"`
	// see RequiredEmails
	RequiredEmailDomain string `json:"requiredEmailDomain,omitempty"`
	// RequiredEmails: specify emails and domains
	// RequiredEmailDomain is appended to RequiredEmails for backward compatibility.
	// e.g.:
	//   RequiredEmailDomain: "example.com"
	//   RequiredEmails: ["foo.com", "foo.bar@test.com"]
	// Result:
	//   *@example.com, *@foo.com and foo.bar@test.com can use the Preset
	RequiredEmails []string `json:"requiredEmails,omitempty"`
	Enabled        *bool    `json:"enabled,omitempty"`
}

Presets specifies default presets for supported providers.

func (*PresetSpec) DeepCopy

func (in *PresetSpec) DeepCopy() *PresetSpec

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

func (*PresetSpec) DeepCopyInto

func (in *PresetSpec) DeepCopyInto(out *PresetSpec)

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

func (PresetSpec) IsEnabled added in v2.16.3

func (s PresetSpec) IsEnabled() bool

func (*PresetSpec) SetEnabled added in v2.19.0

func (s *PresetSpec) SetEnabled(enabled bool)

type Project

type Project struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ProjectSpec   `json:"spec"`
	Status ProjectStatus `json:"status"`
}

Project is the type describing a project.

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

type ProjectGroup

type ProjectGroup struct {
	Name  string `json:"name"`
	Group string `json:"group"`
}

ProjectGroup is a helper data structure that stores the information about a project and a group that a user belongs to.

func (*ProjectGroup) DeepCopy

func (in *ProjectGroup) DeepCopy() *ProjectGroup

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

func (*ProjectGroup) DeepCopyInto

func (in *ProjectGroup) DeepCopyInto(out *ProjectGroup)

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

type ProjectList

type ProjectList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Project `json:"items"`
}

ProjectList is a collection of projects.

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

type ProjectSpec

type ProjectSpec struct {
	Name string `json:"name"`
}

ProjectSpec is a specification of a project.

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus

type ProjectStatus struct {
	Phase string `json:"phase"`
}

ProjectStatus represents the current status of a project.

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

type ProviderPreset added in v2.19.0

type ProviderPreset struct {
	Enabled    *bool  `json:"enabled,omitempty"`
	Datacenter string `json:"datacenter,omitempty"`
}

func (*ProviderPreset) DeepCopy added in v2.19.0

func (in *ProviderPreset) DeepCopy() *ProviderPreset

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

func (*ProviderPreset) DeepCopyInto added in v2.19.0

func (in *ProviderPreset) DeepCopyInto(out *ProviderPreset)

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

func (ProviderPreset) IsEnabled added in v2.19.0

func (s ProviderPreset) IsEnabled() bool

type ProviderType added in v2.16.3

type ProviderType string
const (
	// Constants defining known cloud providers.
	FakeCloudProvider         ProviderType = "fake"
	AKSCloudProvider          ProviderType = "aks"
	AlibabaCloudProvider      ProviderType = "alibaba"
	AnexiaCloudProvider       ProviderType = "anexia"
	AWSCloudProvider          ProviderType = "aws"
	AzureCloudProvider        ProviderType = "azure"
	BringYourOwnCloudProvider ProviderType = "bringyourown"
	DigitaloceanCloudProvider ProviderType = "digitalocean"
	EKSCloudProvider          ProviderType = "eks"
	GCPCloudProvider          ProviderType = "gcp"
	GKECloudProvider          ProviderType = "gke"
	HetznerCloudProvider      ProviderType = "hetzner"
	KubevirtCloudProvider     ProviderType = "kubevirt"
	NutanixCloudProvider      ProviderType = "nutanix"
	OpenstackCloudProvider    ProviderType = "openstack"
	PacketCloudProvider       ProviderType = "packet"
	VSphereCloudProvider      ProviderType = "vsphere"

	DefaultSSHPort     = 22
	DefaultKubeletPort = 10250

	DefaultKubeconfigFieldPath = "kubeconfig"
)

type ProxySettings

type ProxySettings struct {
	// Optional: If set, this proxy will be configured for both HTTP and HTTPS.
	HTTPProxy *ProxyValue `json:"http_proxy,omitempty"`
	// Optional: If set this will be set as NO_PROXY environment variable on the node;
	// The value must be a comma-separated list of domains for which no proxy
	// should be used, e.g. "*.example.com,internal.dev".
	// Note that the in-cluster apiserver URL will be automatically prepended
	// to this value.
	NoProxy *ProxyValue `json:"no_proxy,omitempty"`
}

ProxySettings allow configuring a HTTP proxy for the controlplanes and nodes.

func (*ProxySettings) DeepCopy

func (in *ProxySettings) DeepCopy() *ProxySettings

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

func (*ProxySettings) DeepCopyInto

func (in *ProxySettings) DeepCopyInto(out *ProxySettings)

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

func (*ProxySettings) Empty

func (p *ProxySettings) Empty() bool

Empty returns true if p or all of its children are nil or empty strings.

func (*ProxySettings) Merge

func (p *ProxySettings) Merge(dst *ProxySettings)

Merge applies the settings from p into dst if the corresponding setting in dst is nil or an empty string.

type ProxyValue

type ProxyValue string

func NewProxyValue

func NewProxyValue(value string) *ProxyValue

func (*ProxyValue) Empty

func (p *ProxyValue) Empty() bool

func (*ProxyValue) String

func (p *ProxyValue) String() string

type RSAKeys

type RSAKeys struct {
	PrivateKey Bytes `json:"privateKey"`
	PublicKey  Bytes `json:"publicKey"`
}

RSAKeys is a pair of private and public key where the key is not published to the API client.

func (*RSAKeys) DeepCopy

func (in *RSAKeys) DeepCopy() *RSAKeys

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

func (*RSAKeys) DeepCopyInto

func (in *RSAKeys) DeepCopyInto(out *RSAKeys)

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

type RuleGroup added in v2.18.0

type RuleGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec RuleGroupSpec `json:"spec,omitempty"`
}

func (*RuleGroup) DeepCopy added in v2.18.0

func (in *RuleGroup) DeepCopy() *RuleGroup

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

func (*RuleGroup) DeepCopyInto added in v2.18.0

func (in *RuleGroup) DeepCopyInto(out *RuleGroup)

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

func (*RuleGroup) DeepCopyObject added in v2.18.0

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

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

type RuleGroupList added in v2.18.0

type RuleGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []RuleGroup `json:"items"`
}

func (*RuleGroupList) DeepCopy added in v2.18.0

func (in *RuleGroupList) DeepCopy() *RuleGroupList

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

func (*RuleGroupList) DeepCopyInto added in v2.18.0

func (in *RuleGroupList) DeepCopyInto(out *RuleGroupList)

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

func (*RuleGroupList) DeepCopyObject added in v2.18.0

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

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

type RuleGroupSpec added in v2.18.0

type RuleGroupSpec struct {
	// RuleGroupType is the type of this ruleGroup applies to. It can be `Metrics`.
	RuleGroupType RuleGroupType `json:"ruleGroupType"`
	// Cluster is the reference to the cluster the ruleGroup should be created in.
	Cluster corev1.ObjectReference `json:"cluster"`
	// Data contains the RuleGroup data. Ref: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/#rule_group
	Data []byte `json:"data"`
}

func (*RuleGroupSpec) DeepCopy added in v2.18.0

func (in *RuleGroupSpec) DeepCopy() *RuleGroupSpec

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

func (*RuleGroupSpec) DeepCopyInto added in v2.18.0

func (in *RuleGroupSpec) DeepCopyInto(out *RuleGroupSpec)

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

type RuleGroupType added in v2.18.0

type RuleGroupType string
const (
	// RuleGroupTypeMetrics means the RuleGroup defines the rules to generate alerts from metrics.
	RuleGroupTypeMetrics RuleGroupType = "Metrics"
	// RuleGroupTypeLogs means the RuleGroup defines the rules to generate alerts from logs.
	RuleGroupTypeLogs RuleGroupType = "Logs"
)

type SSHKeySpec

type SSHKeySpec struct {
	Owner       string   `json:"owner"`
	Name        string   `json:"name"`
	Fingerprint string   `json:"fingerprint"`
	PublicKey   string   `json:"publicKey"`
	Clusters    []string `json:"clusters"`
}

func (*SSHKeySpec) DeepCopy

func (in *SSHKeySpec) DeepCopy() *SSHKeySpec

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

func (*SSHKeySpec) DeepCopyInto

func (in *SSHKeySpec) DeepCopyInto(out *SSHKeySpec)

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

type Seed

type Seed struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec SeedSpec `json:"spec"`
}

Seed is the type representing a SeedDatacenter.

func (*Seed) DeepCopy

func (in *Seed) DeepCopy() *Seed

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

func (*Seed) DeepCopyInto

func (in *Seed) DeepCopyInto(out *Seed)

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

func (*Seed) DeepCopyObject

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

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

func (*Seed) IsDefaultEtcdAutomaticBackupEnabled added in v2.19.0

func (s *Seed) IsDefaultEtcdAutomaticBackupEnabled() bool

IsDefaultEtcdAutomaticBackupEnabled returns true if etcd automatic backup is configured for the seed.

func (*Seed) SetDefaults

func (s *Seed) SetDefaults()

type SeedBackupRestoreConfiguration added in v2.18.0

type SeedBackupRestoreConfiguration struct {
	// S3Endpoint is the S3 API endpoint to use for backup and restore.
	S3Endpoint string `json:"s3Endpoint,omitempty"`
	// S3BucketName is the S3 bucket name to use for backup and restore.
	S3BucketName string `json:"s3BucketName,omitempty"`
}

SeedBackupRestoreConfiguration defines the bucket name and endpoint as a backup destination. Deprecated: use EtcdBackupRestore.

func (*SeedBackupRestoreConfiguration) DeepCopy added in v2.18.0

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

func (*SeedBackupRestoreConfiguration) DeepCopyInto added in v2.18.0

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

type SeedList

type SeedList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// List of seeds
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md
	Items []Seed `json:"items" protobuf:"bytes,2,rep,name=items"`
}

SeedDatacenterList is the type representing a SeedDatacenterList.

func (*SeedList) DeepCopy

func (in *SeedList) DeepCopy() *SeedList

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

func (*SeedList) DeepCopyInto

func (in *SeedList) DeepCopyInto(out *SeedList)

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

func (*SeedList) DeepCopyObject

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

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

type SeedMLASettings added in v2.18.0

type SeedMLASettings struct {
	// Optional: UserClusterMLAEnabled controls whether the user cluster MLA (Monitoring, Logging & Alerting) stack is enabled in the seed.
	UserClusterMLAEnabled bool `json:"user_cluster_mla_enabled,omitempty"`
}

SeedMLASettings allow configuring seed level MLA (Monitoring, Logging & Alerting) stack settings.

func (*SeedMLASettings) DeepCopy added in v2.18.0

func (in *SeedMLASettings) DeepCopy() *SeedMLASettings

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

func (*SeedMLASettings) DeepCopyInto added in v2.18.0

func (in *SeedMLASettings) DeepCopyInto(out *SeedMLASettings)

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

type SeedSpec

type SeedSpec struct {
	// Optional: Country of the seed as ISO-3166 two-letter code, e.g. DE or UK.
	// For informational purposes in the Kubermatic dashboard only.
	Country string `json:"country,omitempty"`
	// Optional: Detailed location of the cluster, like "Hamburg" or "Datacenter 7".
	// For informational purposes in the Kubermatic dashboard only.
	Location string `json:"location,omitempty"`
	// A reference to the Kubeconfig of this cluster. The Kubeconfig must
	// have cluster-admin privileges. This field is mandatory for every
	// seed, even if there are no datacenters defined yet.
	Kubeconfig corev1.ObjectReference `json:"kubeconfig"`
	// Datacenters contains a map of the possible datacenters (DCs) in this seed.
	// Each DC must have a globally unique identifier (i.e. names must be unique
	// across all seeds).
	Datacenters map[string]Datacenter `json:"datacenters,omitempty"`
	// Optional: This can be used to override the DNS name used for this seed.
	// By default the seed name is used.
	SeedDNSOverwrite string `json:"seed_dns_overwrite,omitempty"`
	// NodeportProxy can be used to configure the NodePort proxy service that is
	// responsible for making user-cluster control planes accessible from the outside.
	NodeportProxy NodeportProxyConfig `json:"nodeport_proxy,omitempty"`
	// Optional: ProxySettings can be used to configure HTTP proxy settings on the
	// worker nodes in user clusters. However, proxy settings on nodes take precedence.
	ProxySettings *ProxySettings `json:"proxy_settings,omitempty"`
	// Optional: ExposeStrategy explicitly sets the expose strategy for this seed cluster, if not set, the default provided by the master is used.
	ExposeStrategy ExposeStrategy `json:"expose_strategy,omitempty"`
	// Optional: MLA allows configuring seed level MLA (Monitoring, Logging & Alerting) stack settings.
	MLA *SeedMLASettings `json:"mla,omitempty"`
	// DefaultComponentSettings are default values to set for newly created clusters.
	// Deprecated: Use DefaultClusterTemplate instead.
	DefaultComponentSettings ComponentSettings `json:"defaultComponentSettings,omitempty"`
	// DefaultClusterTemplate is the name of a cluster template of scope "seed" that is used
	// to default all new created clusters
	DefaultClusterTemplate string `json:"defaultClusterTemplate,omitempty"`
	// Metering configures the metering tool on user clusters across the seed.
	Metering *MeteringConfigurations `json:"metering,omitempty"`
	// BackupRestore when set, enables backup and restore controllers with given configuration.
	// Deprecated: use EtcdBackupRestore instead which allows for multiple destinations. For now, it's still supported and
	// will work if set.
	BackupRestore *SeedBackupRestoreConfiguration `json:"backupRestore,omitempty"`
	// EtcdBackupRestore holds the configuration of the automatic etcd backup restores for the Seed
	EtcdBackupRestore *EtcdBackupRestore `json:"etcdBackupRestore,omitempty"`
}

The spec for a seed data.

func (*SeedSpec) DeepCopy

func (in *SeedSpec) DeepCopy() *SeedSpec

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

func (*SeedSpec) DeepCopyInto

func (in *SeedSpec) DeepCopyInto(out *SeedSpec)

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

type ServiceAccountSettings added in v2.16.3

type ServiceAccountSettings struct {
	TokenVolumeProjectionEnabled bool `json:"tokenVolumeProjectionEnabled,omitempty"`
	// Issuer is the identifier of the service account token issuer
	// If this is not specified, it will be set to the URL of apiserver by default
	Issuer string `json:"issuer,omitempty"`
	// APIAudiences are the Identifiers of the API
	// If this is not specified, it will be set to a single element list containing the issuer URL
	APIAudiences []string `json:"apiAudiences,omitempty"`
}

func (*ServiceAccountSettings) DeepCopy added in v2.16.3

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

func (*ServiceAccountSettings) DeepCopyInto added in v2.16.3

func (in *ServiceAccountSettings) DeepCopyInto(out *ServiceAccountSettings)

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

type SettingSpec

type SettingSpec struct {
	CustomLinks                 CustomLinks    `json:"customLinks"`
	CleanupOptions              CleanupOptions `json:"cleanupOptions"`
	DefaultNodeCount            int8           `json:"defaultNodeCount"`
	ClusterTypeOptions          ClusterType    `json:"clusterTypeOptions"`
	DisplayDemoInfo             bool           `json:"displayDemoInfo"`
	DisplayAPIDocs              bool           `json:"displayAPIDocs"`
	DisplayTermsOfService       bool           `json:"displayTermsOfService"`
	EnableDashboard             bool           `json:"enableDashboard"`
	EnableOIDCKubeconfig        bool           `json:"enableOIDCKubeconfig"`
	UserProjectsLimit           int64          `json:"userProjectsLimit"`
	RestrictProjectCreation     bool           `json:"restrictProjectCreation"`
	EnableExternalClusterImport bool           `json:"enableExternalClusterImport"`
	OpaOptions                  OpaOptions     `json:"opaOptions"`
	MlaOptions                  MlaOptions     `json:"mlaOptions"`
	MlaAlertmanagerPrefix       string         `json:"mlaAlertmanagerPrefix"`
	MlaGrafanaPrefix            string         `json:"mlaGrafanaPrefix"`

	MachineDeploymentVMResourceQuota MachineDeploymentVMResourceQuota `json:"machineDeploymentVMResourceQuota"`
}

func (*SettingSpec) DeepCopy

func (in *SettingSpec) DeepCopy() *SettingSpec

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

func (*SettingSpec) DeepCopyInto

func (in *SettingSpec) DeepCopyInto(out *SettingSpec)

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

type StatefulSetSettings

type StatefulSetSettings struct {
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}

func (*StatefulSetSettings) DeepCopy

func (in *StatefulSetSettings) DeepCopy() *StatefulSetSettings

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

func (*StatefulSetSettings) DeepCopyInto

func (in *StatefulSetSettings) DeepCopyInto(out *StatefulSetSettings)

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

type UpdateWindow

type UpdateWindow struct {
	Start  string `json:"start,omitempty"`
	Length string `json:"length,omitempty"`
}

func (*UpdateWindow) DeepCopy

func (in *UpdateWindow) DeepCopy() *UpdateWindow

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

func (*UpdateWindow) DeepCopyInto

func (in *UpdateWindow) DeepCopyInto(out *UpdateWindow)

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

type User

type User struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   UserSpec   `json:"spec"`
	Status UserStatus `json:"status,omitempty"`
}

User specifies a user +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject

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

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

func (*User) GetTokenBlackListSecretName

func (u *User) GetTokenBlackListSecretName() string

type UserList

type UserList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []User `json:"items"`
}

UserList is a list of users +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*UserList) DeepCopy

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject

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

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

type UserProjectBinding

type UserProjectBinding struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec UserProjectBindingSpec `json:"spec"`
}

UserProjectBinding specifies a binding between a user and a project This resource is used by the user management to manipulate members of the given project.

func (*UserProjectBinding) DeepCopy

func (in *UserProjectBinding) DeepCopy() *UserProjectBinding

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

func (*UserProjectBinding) DeepCopyInto

func (in *UserProjectBinding) DeepCopyInto(out *UserProjectBinding)

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

func (*UserProjectBinding) DeepCopyObject

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

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

type UserProjectBindingList

type UserProjectBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []UserProjectBinding `json:"items"`
}

UserProjectBindingList is a list of users.

func (*UserProjectBindingList) DeepCopy

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

func (*UserProjectBindingList) DeepCopyInto

func (in *UserProjectBindingList) DeepCopyInto(out *UserProjectBindingList)

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

func (*UserProjectBindingList) DeepCopyObject

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

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

type UserProjectBindingSpec

type UserProjectBindingSpec struct {
	UserEmail string `json:"userEmail"`
	ProjectID string `json:"projectId"`
	Group     string `json:"group"`
}

UserProjectBindingSpec specifies a user.

func (*UserProjectBindingSpec) DeepCopy

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

func (*UserProjectBindingSpec) DeepCopyInto

func (in *UserProjectBindingSpec) DeepCopyInto(out *UserProjectBindingSpec)

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

type UserSSHKey

type UserSSHKey struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec SSHKeySpec `json:"spec"`
}

UserSSHKey specifies a users UserSSHKey +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*UserSSHKey) AddToCluster

func (sk *UserSSHKey) AddToCluster(clustername string)

func (*UserSSHKey) DeepCopy

func (in *UserSSHKey) DeepCopy() *UserSSHKey

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

func (*UserSSHKey) DeepCopyInto

func (in *UserSSHKey) DeepCopyInto(out *UserSSHKey)

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

func (*UserSSHKey) DeepCopyObject

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

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

func (*UserSSHKey) IsUsedByCluster

func (sk *UserSSHKey) IsUsedByCluster(clustername string) bool

func (*UserSSHKey) RemoveFromCluster

func (sk *UserSSHKey) RemoveFromCluster(clustername string)

type UserSSHKeyList

type UserSSHKeyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []UserSSHKey `json:"items"`
}

UserSSHKeyList specifies a users UserSSHKey +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*UserSSHKeyList) DeepCopy

func (in *UserSSHKeyList) DeepCopy() *UserSSHKeyList

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

func (*UserSSHKeyList) DeepCopyInto

func (in *UserSSHKeyList) DeepCopyInto(out *UserSSHKeyList)

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

func (*UserSSHKeyList) DeepCopyObject

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

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

type UserSettings

type UserSettings struct {
	SelectedTheme              string `json:"selectedTheme,omitempty"`
	ItemsPerPage               int8   `json:"itemsPerPage,omitempty"`
	SelectedProjectID          string `json:"selectedProjectId,omitempty"`
	SelectProjectTableView     bool   `json:"selectProjectTableView,omitempty"`
	CollapseSidenav            bool   `json:"collapseSidenav,omitempty"`
	DisplayAllProjectsForAdmin bool   `json:"displayAllProjectsForAdmin,omitempty"`
	LastSeenChangelogVersion   string `json:"lastSeenChangelogVersion,omitempty"`
}

UserSettings represent an user settings.

func (*UserSettings) DeepCopy

func (in *UserSettings) DeepCopy() *UserSettings

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

func (*UserSettings) DeepCopyInto

func (in *UserSettings) DeepCopyInto(out *UserSettings)

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

type UserSpec

type UserSpec struct {
	ID                      string                                  `json:"id"`
	Name                    string                                  `json:"name"`
	Email                   string                                  `json:"email"`
	IsAdmin                 bool                                    `json:"admin"`
	Settings                *UserSettings                           `json:"settings,omitempty"`
	TokenBlackListReference *providerconfig.GlobalSecretKeySelector `json:"tokenBlackListReference,omitempty"`
}

UserSpec specifies a user.

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus added in v2.19.0

type UserStatus struct {
	LastSeen *metav1.Time `json:"lastSeen,omitempty"`
}

UserStatus stores status information about a user.

func (*UserStatus) DeepCopy added in v2.19.0

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto added in v2.19.0

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

type VSphere

type VSphere struct {
	ProviderPreset `json:",inline"`

	Username string `json:"username"`
	Password string `json:"password"`

	VMNetName        string `json:"vmNetName,omitempty"`
	Datastore        string `json:"datastore,omitempty"`
	DatastoreCluster string `json:"datastoreCluster,omitempty"`
	ResourcePool     string `json:"resourcePool,omitempty"`
}

func (*VSphere) DeepCopy

func (in *VSphere) DeepCopy() *VSphere

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

func (*VSphere) DeepCopyInto

func (in *VSphere) DeepCopyInto(out *VSphere)

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

func (VSphere) IsValid added in v2.16.3

func (s VSphere) IsValid() bool

type VSphereCloudSpec

type VSphereCloudSpec struct {
	CredentialsReference *providerconfig.GlobalSecretKeySelector `json:"credentialsReference,omitempty"`

	// Username is the vSphere user name.
	// +optional
	Username string `json:"username"`
	// Password is the vSphere user password.
	// +optional
	Password string `json:"password"`
	// VMNetName is the name of the vSphere network.
	VMNetName string `json:"vmNetName"`
	// Folder is the folder to be used to group the provisioned virtual
	// machines.
	// +optional
	Folder string `json:"folder"`

	// Datastore to be used for storing virtual machines and as a default for
	// dynamic volume provisioning, it is mutually exclusive with
	// DatastoreCluster.
	// +optional
	Datastore string `json:"datastore,omitempty"`
	// DatastoreCluster to be used for storing virtual machines, it is mutually
	// exclusive with Datastore.
	// +optional
	DatastoreCluster string `json:"datastoreCluster,omitempty"`

	// StoragePolicy to be used for storage provisioning
	StoragePolicy string `json:"storagePolicy"`

	// ResourcePool is used to manage resources such as cpu and memory for vSphere virtual machines. The resource pool
	// should be defined on vSphere cluster level.
	// +optional
	ResourcePool string `json:"resourcePool,omitempty"`

	// This user will be used for everything except cloud provider functionality
	InfraManagementUser VSphereCredentials `json:"infraManagementUser"`
}

VSphereCloudSpec specifies access data to VSphere cloud.

func (*VSphereCloudSpec) DeepCopy

func (in *VSphereCloudSpec) DeepCopy() *VSphereCloudSpec

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

func (*VSphereCloudSpec) DeepCopyInto

func (in *VSphereCloudSpec) DeepCopyInto(out *VSphereCloudSpec)

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

type VSphereCredentials

type VSphereCredentials struct {
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
}

VSphereCredentials credentials represents a credential for accessing vSphere.

func (*VSphereCredentials) DeepCopy

func (in *VSphereCredentials) DeepCopy() *VSphereCredentials

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

func (*VSphereCredentials) DeepCopyInto

func (in *VSphereCredentials) DeepCopyInto(out *VSphereCredentials)

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