Documentation
¶
Overview ¶
+groupName=operator.kubermatic.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type ExposeStrategy
- type KubermaticAPIConfiguration
- type KubermaticAddonConfiguration
- type KubermaticAddonsConfiguration
- type KubermaticAuthConfiguration
- type KubermaticConfiguration
- type KubermaticConfigurationList
- type KubermaticConfigurationSpec
- type KubermaticIngressConfiguration
- type KubermaticMasterControllerConfiguration
- type KubermaticProjectsMigratorConfiguration
- type KubermaticProxyConfiguration
- type KubermaticSeedControllerConfiguration
- type KubermaticUIConfiguration
- type KubermaticUserClusterConfiguration
- type KubermaticUserClusterMonitoringConfiguration
- type KubermaticVPAComponent
- type KubermaticVPAConfiguration
- type KubermaticVersioningConfiguration
- type KubermaticVersionsConfiguration
- type Update
Constants ¶
const GroupName = "operator.kubermatic.io"
GroupName is the group name use in this package
const GroupVersion = "v1alpha1"
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type ExposeStrategy ¶
type ExposeStrategy string
ExposeStrategy is the strategy to expose the cluster with.
const ( // NodePortStrategy 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. NodePortStrategy ExposeStrategy = "NodePort" // LoadBalancerStrategy creates a LoadBalancer service per cluster. LoadBalancerStrategy ExposeStrategy = "LoadBalancer" )
type KubermaticAPIConfiguration ¶
type KubermaticAPIConfiguration struct {
// DockerRepository is the repository containing the Kubermatic REST API image.
DockerRepository string `json:"dockerRepository,omitempty"`
// AccessibleAddons is a list of addons that should be enabled in the API.
AccessibleAddons []string `json:"accessibleAddons,omitempty"`
// PProfEndpoint controls the port the API should listen on to provide pprof
// data. This port is never exposed from the container and only available via port-forwardings.
PProfEndpoint *string `json:"pprofEndpoint,omitempty"`
// Resources describes the requested and maximum allowed CPU/memory usage.
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// DebugLog enables more verbose logging.
DebugLog bool `json:"debugLog,omitempty"`
// Replicas sets the number of pod replicas for the API deployment.
Replicas *int32 `json:"replicas,omitempty"`
}
KubermaticAPIConfiguration configures the dashboard.
func (*KubermaticAPIConfiguration) DeepCopy ¶
func (in *KubermaticAPIConfiguration) DeepCopy() *KubermaticAPIConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticAPIConfiguration.
func (*KubermaticAPIConfiguration) DeepCopyInto ¶
func (in *KubermaticAPIConfiguration) DeepCopyInto(out *KubermaticAPIConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticAddonConfiguration ¶
type KubermaticAddonConfiguration struct {
// Default is the list of addons to be installed by default into each cluster.
// Mutually exclusive with "defaultManifests".
Default []string `json:"default,omitempty"`
// DefaultManifests is a list of addon manifests to install into all clusters.
// Mutually exclusive with "default".
DefaultManifests string `json:"defaultManifests,omitempty"`
// DockerRepository is the repository containing the Docker image containing
// the possible addon manifests.
DockerRepository string `json:"dockerRepository,omitempty"`
}
KubermaticAddonConfiguration describes the addons for a given cluster runtime.
func (*KubermaticAddonConfiguration) DeepCopy ¶
func (in *KubermaticAddonConfiguration) DeepCopy() *KubermaticAddonConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticAddonConfiguration.
func (*KubermaticAddonConfiguration) DeepCopyInto ¶
func (in *KubermaticAddonConfiguration) DeepCopyInto(out *KubermaticAddonConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticAddonsConfiguration ¶
type KubermaticAddonsConfiguration struct {
// Kubernetes controls the addons for Kubernetes-based clusters.
Kubernetes KubermaticAddonConfiguration `json:"kubernetes,omitempty"`
// Openshift controls the addons for Openshift-based clusters.
Openshift KubermaticAddonConfiguration `json:"openshift,omitempty"`
}
KubermaticAddonsConfiguration controls the optional additions installed into each user cluster.
func (*KubermaticAddonsConfiguration) DeepCopy ¶
func (in *KubermaticAddonsConfiguration) DeepCopy() *KubermaticAddonsConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticAddonsConfiguration.
func (*KubermaticAddonsConfiguration) DeepCopyInto ¶
func (in *KubermaticAddonsConfiguration) DeepCopyInto(out *KubermaticAddonsConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticAuthConfiguration ¶
type KubermaticAuthConfiguration struct {
ClientID string `json:"clientID,omitempty"`
TokenIssuer string `json:"tokenIssuer,omitempty"`
IssuerRedirectURL string `json:"issuerRedirectURL,omitempty"`
IssuerClientID string `json:"issuerClientID,omitempty"`
IssuerClientSecret string `json:"issuerClientSecret,omitempty"`
IssuerCookieKey string `json:"issuerCookieKey,omitempty"`
CABundle string `json:"caBundle,omitempty"`
ServiceAccountKey string `json:"serviceAccountKey,omitempty"`
SkipTokenIssuerTLSVerify bool `json:"skipTokenIssuerTLSVerify,omitempty"`
}
KubermaticAuthConfiguration defines keys and URLs for Dex.
func (*KubermaticAuthConfiguration) DeepCopy ¶
func (in *KubermaticAuthConfiguration) DeepCopy() *KubermaticAuthConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticAuthConfiguration.
func (*KubermaticAuthConfiguration) DeepCopyInto ¶
func (in *KubermaticAuthConfiguration) DeepCopyInto(out *KubermaticAuthConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticConfiguration ¶
type KubermaticConfiguration struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec KubermaticConfigurationSpec `json:"spec"`
}
KubermaticConfiguration is the configuration required for running Kubermatic.
func (*KubermaticConfiguration) DeepCopy ¶
func (in *KubermaticConfiguration) DeepCopy() *KubermaticConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticConfiguration.
func (*KubermaticConfiguration) DeepCopyInto ¶
func (in *KubermaticConfiguration) DeepCopyInto(out *KubermaticConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubermaticConfiguration) DeepCopyObject ¶
func (in *KubermaticConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KubermaticConfigurationList ¶
type KubermaticConfigurationList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []KubermaticConfiguration `json:"items"`
}
KubermaticConfigurationList is a collection of KubermaticConfigurations.
func (*KubermaticConfigurationList) DeepCopy ¶
func (in *KubermaticConfigurationList) DeepCopy() *KubermaticConfigurationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticConfigurationList.
func (*KubermaticConfigurationList) DeepCopyInto ¶
func (in *KubermaticConfigurationList) DeepCopyInto(out *KubermaticConfigurationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubermaticConfigurationList) DeepCopyObject ¶
func (in *KubermaticConfigurationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KubermaticConfigurationSpec ¶
type KubermaticConfigurationSpec struct {
// ImagePullSecret is used to authenticate against Docker registries.
ImagePullSecret string `json:"imagePullSecret,omitempty"`
// Auth defines keys and URLs for Dex.
Auth KubermaticAuthConfiguration `json:"auth"`
// FeatureGates are used to optionally enable certain features.
FeatureGates sets.String `json:"featureGates,omitempty"`
// UI configures the dashboard.
UI KubermaticUIConfiguration `json:"ui,omitempty"`
// API configures the frontend REST API used by the dashboard.
API KubermaticAPIConfiguration `json:"api,omitempty"`
// SeedController configures the seed-controller-manager.
SeedController KubermaticSeedControllerConfiguration `json:"seedController,omitempty"`
// MasterController configures the master-controller-manager.
MasterController KubermaticMasterControllerConfiguration `json:"masterController,omitempty"`
// UserCluster configures various aspects of the user-created clusters.
UserCluster KubermaticUserClusterConfiguration `json:"userCluster,omitempty"`
// ExposeStrategy is the strategy to expose the cluster with.
// Note: The `seed_dns_overwrite` setting of a Seed's datacenter doesn't have any effect
// if this is set to LoadBalancerStrategy.
ExposeStrategy ExposeStrategy `json:"exposeStrategy,omitempty"`
// Ingress contains settings for making the API and UI accessible remotely.
Ingress KubermaticIngressConfiguration `json:"ingress,omitempty"`
// Versions configures the available and default Kubernetes/Openshift versions and updates.
Versions KubermaticVersionsConfiguration `json:"versions,omitempty"`
// VerticalPodAutoscaler configures the Kubernetes VPA integration.
VerticalPodAutoscaler KubermaticVPAConfiguration `json:"verticalPodAutoscaler,omitempty"`
// Proxy allows to configure Kubermatic to use proxies to talk to the
// world outside of its cluster.
Proxy KubermaticProxyConfiguration `json:"proxy,omitempty"`
}
KubermaticConfigurationSpec is the spec for a Kubermatic installation.
func (*KubermaticConfigurationSpec) DeepCopy ¶
func (in *KubermaticConfigurationSpec) DeepCopy() *KubermaticConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticConfigurationSpec.
func (*KubermaticConfigurationSpec) DeepCopyInto ¶
func (in *KubermaticConfigurationSpec) DeepCopyInto(out *KubermaticConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticIngressConfiguration ¶
type KubermaticIngressConfiguration struct {
// Domain is the base domain where the dashboard shall be available. Even with
// a disabled Ingress, this must always be a valid hostname.
Domain string `json:"domain"`
// ClassName is the Ingress resource's class name, used for selecting the appropriate
// ingress controller.
ClassName string `json:"className,omitempty"`
// Disable will prevent an Ingress from being created at all. This is mostly useful
// during testing. If the Ingress is disabled, the CertificateIssuer setting can also
// be left empty, as no Certificate resource will be created.
Disable bool `json:"disable,omitempty"`
// CertificateIssuer is the name of a cert-manager Issuer or ClusterIssuer (default)
// that will be used to acquire the certificate for the configured domain.
// To use a namespaced Issuer, set the Kind to "Issuer" and manually create the
// matching Issuer in Kubermatic's namespace.
CertificateIssuer corev1.TypedLocalObjectReference `json:"certificateIssuer,omitempty"`
}
func (*KubermaticIngressConfiguration) DeepCopy ¶
func (in *KubermaticIngressConfiguration) DeepCopy() *KubermaticIngressConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticIngressConfiguration.
func (*KubermaticIngressConfiguration) DeepCopyInto ¶
func (in *KubermaticIngressConfiguration) DeepCopyInto(out *KubermaticIngressConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticMasterControllerConfiguration ¶
type KubermaticMasterControllerConfiguration struct {
// DockerRepository is the repository containing the Kubermatic master-controller-manager image.
DockerRepository string `json:"dockerRepository,omitempty"`
// ProjectsMigrator configures the migrator for user projects.
ProjectsMigrator KubermaticProjectsMigratorConfiguration `json:"projectsMigrator,omitempty"`
// PProfEndpoint controls the port the master-controller-manager should listen on to provide pprof
// data. This port is never exposed from the container and only available via port-forwardings.
PProfEndpoint *string `json:"pprofEndpoint,omitempty"`
// Resources describes the requested and maximum allowed CPU/memory usage.
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// DebugLog enables more verbose logging.
DebugLog bool `json:"debugLog,omitempty"`
// Replicas sets the number of pod replicas for the master-controller-manager.
Replicas *int32 `json:"replicas,omitempty"`
}
KubermaticMasterControllerConfiguration configures the Kubermatic master controller-manager.
func (*KubermaticMasterControllerConfiguration) DeepCopy ¶
func (in *KubermaticMasterControllerConfiguration) DeepCopy() *KubermaticMasterControllerConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticMasterControllerConfiguration.
func (*KubermaticMasterControllerConfiguration) DeepCopyInto ¶
func (in *KubermaticMasterControllerConfiguration) DeepCopyInto(out *KubermaticMasterControllerConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticProjectsMigratorConfiguration ¶
type KubermaticProjectsMigratorConfiguration struct {
// DryRun makes the migrator only log the actions it would take.
DryRun bool `json:"dryRun,omitempty"`
}
KubermaticProjectsMigratorConfiguration configures the Kubermatic master controller-manager.
func (*KubermaticProjectsMigratorConfiguration) DeepCopy ¶
func (in *KubermaticProjectsMigratorConfiguration) DeepCopy() *KubermaticProjectsMigratorConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticProjectsMigratorConfiguration.
func (*KubermaticProjectsMigratorConfiguration) DeepCopyInto ¶
func (in *KubermaticProjectsMigratorConfiguration) DeepCopyInto(out *KubermaticProjectsMigratorConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticProxyConfiguration ¶
type KubermaticProxyConfiguration struct {
// HTTP is the full URL to the proxy to use for plaintext HTTP
// connections, e.g. "http://internalproxy.example.com:8080".
HTTP string `json:"http,omitempty"`
// HTTPS is the full URL to the proxy to use for encrypted HTTPS
// connections, e.g. "http://secureinternalproxy.example.com:8080".
HTTPS string `json:"https,omitempty"`
// NoProxy is a comma-separated list of hostnames / network masks
// for which no proxy shall be used. If you make use of proxies,
// this list should contain all local and cluster-internal domains
// and networks, e.g. "10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,mydomain".
// The operator will always prepend the following elements to this
// list if proxying is configured (i.e. HTTP/HTTPS are not empty):
// "127.0.0.1/8", "localhost", ".local", ".local.", "kubernetes", ".default", ".svc"
NoProxy string `json:"noProxy,omitempty"`
}
KubermaticProxyConfiguration can be used to control how the various Kubermatic components reach external services / the Internet. These settings are reflected as environment variables for the Kubermatic pods.
func (*KubermaticProxyConfiguration) DeepCopy ¶
func (in *KubermaticProxyConfiguration) DeepCopy() *KubermaticProxyConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticProxyConfiguration.
func (*KubermaticProxyConfiguration) DeepCopyInto ¶
func (in *KubermaticProxyConfiguration) DeepCopyInto(out *KubermaticProxyConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticSeedControllerConfiguration ¶
type KubermaticSeedControllerConfiguration struct {
// DockerRepository is the repository containing the Kubermatic seed-controller-manager image.
DockerRepository string `json:"dockerRepository,omitempty"`
// BackupStoreContainer is the container used for shipping etcd snapshots to a backup location.
BackupStoreContainer string `json:"backupStoreContainer,omitempty"`
// BackupCleanupContainer is the container used for removing expired backups from the storage location.
BackupCleanupContainer string `json:"backupCleanupContainer,omitempty"`
// PProfEndpoint controls the port the seed-controller-manager should listen on to provide pprof
// data. This port is never exposed from the container and only available via port-forwardings.
PProfEndpoint *string `json:"pprofEndpoint,omitempty"`
// Resources describes the requested and maximum allowed CPU/memory usage.
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// DebugLog enables more verbose logging.
DebugLog bool `json:"debugLog,omitempty"`
// Replicas sets the number of pod replicas for the seed-controller-manager.
Replicas *int32 `json:"replicas,omitempty"`
}
KubermaticSeedControllerConfiguration configures the Kubermatic seed controller-manager.
func (*KubermaticSeedControllerConfiguration) DeepCopy ¶
func (in *KubermaticSeedControllerConfiguration) DeepCopy() *KubermaticSeedControllerConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticSeedControllerConfiguration.
func (*KubermaticSeedControllerConfiguration) DeepCopyInto ¶
func (in *KubermaticSeedControllerConfiguration) DeepCopyInto(out *KubermaticSeedControllerConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticUIConfiguration ¶
type KubermaticUIConfiguration struct {
// DockerRepository is the repository containing the Kubermatic dashboard image.
DockerRepository string `json:"dockerRepository,omitempty"`
// DockerTag is used to overwrite the dashboard Docker image tag and is only for development
// purposes. This field must not be set in production environments.
// ---
//nolint:staticcheck
//lint:ignore SA5008 omitgenyaml is used by the example-yaml-generator
DockerTag string `json:"dockerTag,omitempty,omitgenyaml"`
// Config sets flags for various dashboard features.
Config string `json:"config,omitempty"`
// Resources describes the requested and maximum allowed CPU/memory usage.
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// Replicas sets the number of pod replicas for the UI deployment.
Replicas *int32 `json:"replicas,omitempty"`
}
KubermaticUIConfiguration configures the dashboard.
func (*KubermaticUIConfiguration) DeepCopy ¶
func (in *KubermaticUIConfiguration) DeepCopy() *KubermaticUIConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticUIConfiguration.
func (*KubermaticUIConfiguration) DeepCopyInto ¶
func (in *KubermaticUIConfiguration) DeepCopyInto(out *KubermaticUIConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticUserClusterConfiguration ¶
type KubermaticUserClusterConfiguration struct {
// KubermaticDockerRepository is the repository containing the Kubermatic user-cluster-controller-manager image.
KubermaticDockerRepository string `json:"kubermaticDockerRepository,omitempty"`
// DNATControllerDockerRepository is the repository containing the Kubermatic user-cluster-controller-manager image.
DNATControllerDockerRepository string `json:"dnatControllerDockerRepository,omitempty"`
// OverwriteRegistry specifies a custom Docker registry which will be used for all images
// used inside user clusters (user cluster control plane + addons). This also applies to
// the KubermaticDockerRepository and DNATControllerDockerRepository fields.
OverwriteRegistry string `json:"overwriteRegistry,omitempty"`
// Addons controls the optional additions installed into each user cluster.
Addons KubermaticAddonsConfiguration `json:"addons,omitempty"`
// NodePortRange is the port range for customer clusters - this must match the NodePort
// range of the seed cluster.
NodePortRange string `json:"nodePortRange,omitempty"`
// Monitoring can be used to fine-tune to in-cluster Prometheus.
Monitoring KubermaticUserClusterMonitoringConfiguration `json:"monitoring,omitempty"`
// DisableAPIServerEndpointReconciling can be used to toggle the `--endpoint-reconciler-type` flag for
// the Kubernetes API server.
DisableAPIServerEndpointReconciling bool `json:"disableApiserverEndpointReconciling,omitempty"`
// EtcdVolumeSize configures the volume size to use for each etcd pod inside user clusters.
EtcdVolumeSize string `json:"etcdVolumeSize,omitempty"`
// APIServerReplicas configures the replica count for the API-Server deployment inside user clusters.
APIServerReplicas *int32 `json:"apiserverReplicas,omitempty"`
}
KubermaticUserClusterConfiguration controls various aspects of the user-created clusters.
func (*KubermaticUserClusterConfiguration) DeepCopy ¶
func (in *KubermaticUserClusterConfiguration) DeepCopy() *KubermaticUserClusterConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticUserClusterConfiguration.
func (*KubermaticUserClusterConfiguration) DeepCopyInto ¶
func (in *KubermaticUserClusterConfiguration) DeepCopyInto(out *KubermaticUserClusterConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticUserClusterMonitoringConfiguration ¶
type KubermaticUserClusterMonitoringConfiguration struct {
// DisableDefaultRules disables the recording and alerting rules.
DisableDefaultRules bool `json:"disableDefaultRules,omitempty"`
// DisableDefaultScrapingConfigs disables the default scraping targets.
DisableDefaultScrapingConfigs bool `json:"disableDefaultScrapingConfigs,omitempty"`
// CustomRules can be used to inject custom recording and alerting rules. This field
// must be a YAML-formatted string with a `group` element at its root, as documented
// on https://prometheus.io/docs/prometheus/2.14/configuration/alerting_rules/.
CustomRules string `json:"customRules,omitempty"`
// CustomScrapingConfigs can be used to inject custom scraping rules. This must be a
// YAML-formatted string containing an array of scrape configurations as documented
// on https://prometheus.io/docs/prometheus/2.14/configuration/configuration/#scrape_config.
CustomScrapingConfigs string `json:"customScrapingConfigs,omitempty"`
// ScrapeAnnotationPrefix (if set) is used to make the in-cluster Prometheus scrape pods
// inside the user clusters.
ScrapeAnnotationPrefix string `json:"scrapeAnnotationPrefix,omitempty"`
}
KubermaticUserClusterMonitoringConfiguration can be used to fine-tune to in-cluster Prometheus.
func (*KubermaticUserClusterMonitoringConfiguration) DeepCopy ¶
func (in *KubermaticUserClusterMonitoringConfiguration) DeepCopy() *KubermaticUserClusterMonitoringConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticUserClusterMonitoringConfiguration.
func (*KubermaticUserClusterMonitoringConfiguration) DeepCopyInto ¶
func (in *KubermaticUserClusterMonitoringConfiguration) DeepCopyInto(out *KubermaticUserClusterMonitoringConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticVPAComponent ¶
type KubermaticVPAComponent struct {
// DockerRepository is the repository containing the component's image.
DockerRepository string `json:"dockerRepository,omitempty"`
// Resources describes the requested and maximum allowed CPU/memory usage.
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}
func (*KubermaticVPAComponent) DeepCopy ¶
func (in *KubermaticVPAComponent) DeepCopy() *KubermaticVPAComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticVPAComponent.
func (*KubermaticVPAComponent) DeepCopyInto ¶
func (in *KubermaticVPAComponent) DeepCopyInto(out *KubermaticVPAComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticVPAConfiguration ¶
type KubermaticVPAConfiguration struct {
Recommender KubermaticVPAComponent `json:"recommender,omitempty"`
Updater KubermaticVPAComponent `json:"updater,omitempty"`
AdmissionController KubermaticVPAComponent `json:"admissionController,omitempty"`
}
KubermaticVPAConfiguration configures the Kubernetes VPA.
func (*KubermaticVPAConfiguration) DeepCopy ¶
func (in *KubermaticVPAConfiguration) DeepCopy() *KubermaticVPAConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticVPAConfiguration.
func (*KubermaticVPAConfiguration) DeepCopyInto ¶
func (in *KubermaticVPAConfiguration) DeepCopyInto(out *KubermaticVPAConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticVersioningConfiguration ¶
type KubermaticVersioningConfiguration struct {
// Versions lists the available versions.
Versions []*semver.Version `json:"versions,omitempty"`
// Default is the default version to offer users.
Default *semver.Version `json:"default,omitempty"`
// Updates is a list of available and automatic upgrades.
// All 'to' versions must be configured in the version list for this orchestrator.
// Each update may optionally be configured to be 'automatic: true', in which case the
// controlplane of all clusters whose version matches the 'from' directive will get
// updated to the 'to' version. If automatic is enabled, the 'to' version must be a
// version and not a version range.
// Also, updates may set 'automaticNodeUpdate: true', in which case Nodes will get
// updates as well. 'automaticNodeUpdate: true' implies 'automatic: true' as well,
// because Nodes may not have a newer version than the controlplane.
Updates []Update `json:"updates,omitempty"`
}
KubermaticVersioningConfiguration configures the available and default Kubernetes/Openshift versions.
func (*KubermaticVersioningConfiguration) DeepCopy ¶
func (in *KubermaticVersioningConfiguration) DeepCopy() *KubermaticVersioningConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticVersioningConfiguration.
func (*KubermaticVersioningConfiguration) DeepCopyInto ¶
func (in *KubermaticVersioningConfiguration) DeepCopyInto(out *KubermaticVersioningConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubermaticVersionsConfiguration ¶
type KubermaticVersionsConfiguration struct {
// Kubernetes configures the Kubernetes versions and updates.
Kubernetes KubermaticVersioningConfiguration `json:"kubernetes,omitempty"`
// Openshift configures the Openshift versions and updates.
Openshift KubermaticVersioningConfiguration `json:"openshift,omitempty"`
}
KubermaticVersionsConfiguration configures the available and default Kubernetes/Openshift versions.
func (*KubermaticVersionsConfiguration) DeepCopy ¶
func (in *KubermaticVersionsConfiguration) DeepCopy() *KubermaticVersionsConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubermaticVersionsConfiguration.
func (*KubermaticVersionsConfiguration) DeepCopyInto ¶
func (in *KubermaticVersionsConfiguration) DeepCopyInto(out *KubermaticVersionsConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Update ¶
type Update struct {
// From is the version from which an update is allowed. Wildcards are allowed, e.g. "1.18.*".
From string `json:"from,omitempty"`
// From is the version to which an update is allowed. Wildcards are allowed, e.g. "1.18.*".
To string `json:"to,omitempty"`
// Automatic controls whether this update is executed automatically
// for the control plane of all matching user clusters.
// ---
//nolint:staticcheck
//lint:ignore SA5008 omitgenyaml is used by the example-yaml-generator
Automatic *bool `json:"automatic,omitempty,omitgenyaml"`
// Automatic controls whether this update is executed automatically
// for the worker nodes of all matching user clusters.
// ---
//nolint:staticcheck
//lint:ignore SA5008 omitgenyaml is used by the example-yaml-generator
AutomaticNodeUpdate *bool `json:"automaticNodeUpdate,omitempty,omitgenyaml"`
}
Update represents an update option for a user cluster.
func (*Update) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Update.
func (*Update) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.