Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the operator v1 API group +kubebuilder:object:generate=true +groupName=operator.open-cluster-management.io
Index ¶
- Constants
- Variables
- func AvailabilityConfigIsValid(config AvailabilityType) bool
- func GetClusterManagementAddonName(component string) (string, error)
- func GetDefaultDisabledComponents() ([]string, error)
- func GetDefaultEnabledComponents() ([]string, error)
- func GetLegacyConfigKind() []string
- func GetLegacyPrometheusRulesName(component string) (string, error)
- func GetLegacyServiceMonitorName(component string) (string, error)
- func GetLegacyServiceName(component string) (string, error)
- func IsCommunity() (bool, error)
- func ValidComponent(c ComponentConfig, validComponents []string) bool
- func ValidatingWebhook(namespace string) *admissionregistration.ValidatingWebhookConfiguration
- type AvailabilityType
- type BackupConfig
- type ComponentConfig
- type ConfigOverride
- type ContainerConfig
- type DeploymentConfig
- type DeploymentMode
- type EnvConfig
- type ExternalDNSAWSConfig
- type ExternalDNSConfig
- type ExternalDNSGCPConfig
- type FailedProvisionConfig
- type HiveConfigSpec
- type HiveConfigStatus
- type HubCondition
- type HubConditionType
- type HubPhaseType
- type HubSize
- type IngressSpec
- type InternalHubComponent
- type InternalHubComponentList
- type InternalHubComponentSpec
- type MultiClusterHub
- func (mch *MultiClusterHub) ComponentPresent(s string) bool
- func (in *MultiClusterHub) DeepCopy() *MultiClusterHub
- func (in *MultiClusterHub) DeepCopyInto(out *MultiClusterHub)
- func (in *MultiClusterHub) DeepCopyObject() runtime.Object
- func (r *MultiClusterHub) Default()
- func (mch *MultiClusterHub) Disable(s string)
- func (mch *MultiClusterHub) Enable(s string)
- func (mch *MultiClusterHub) Enabled(s string) bool
- func (mch *MultiClusterHub) Prune(s string) bool
- func (r *MultiClusterHub) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MultiClusterHub) ValidateCreate() (admission.Warnings, error)
- func (r *MultiClusterHub) ValidateDelete() (admission.Warnings, error)
- func (r *MultiClusterHub) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type MultiClusterHubList
- type MultiClusterHubSpec
- type MultiClusterHubStatus
- type Overrides
- type ResourceGVK
- type StatusCondition
- type VeleroBackupConfig
Constants ¶
const ( Appsub string = "app-lifecycle" ClusterBackup string = "cluster-backup" ClusterLifecycle string = "cluster-lifecycle" ClusterPermission string = "cluster-permission" Console string = "console" GRC string = "grc" Insights string = "insights" ManagementIngress string = "management-ingress" MultiClusterEngine string = "multicluster-engine" MultiClusterObservability string = "multicluster-observability" Repo string = "multiclusterhub-repo" Search string = "search" SiteConfig string = "siteconfig" SubmarinerAddon string = "submariner-addon" Volsync string = "volsync" )
Component related to MultiClusterHub (MCH)
const ( MCEAssistedService string = "assisted-service" MCEClusterLifecycle string = "cluster-lifecycle-mce" MCEClusterManager string = "cluster-manager" MCEClusterProxyAddon string = "cluster-proxy-addon" MCEConsole string = "console-mce" MCEDiscovery string = "discovery" MCEHive string = "hive" MCEHypershiftLocalHosting string = "hypershift-local-hosting" MCEHypershiftPreview string = "hypershift-preview" MCEHypershift string = "hypershift" MCEImageBasedInstallOperator string = "image-based-install-operator" MCEImageBasedInstallOperatorPreview string = "image-based-install-operator-preview" MCELocalCluster string = "local-cluster" MCEManagedServiceAccount string = "managedserviceaccount" MCEManagedServiceAccountPreview string = "managedserviceaccount-preview" MCEServerFoundation string = "server-foundation" IamPolicyController string = "iam-policy-controller" )
Component related to MultiCluster Engine (MCE)
const MCH = "multiclusterhub-operator"
Name of the MultiClusterHub (MCH) operator.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "operator.open-cluster-management.io", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var (
Client client.Client
)
var ClusterManagementAddOns = map[string]string{ IamPolicyController: "iam-policy-controller", SubmarinerAddon: "submariner", }
ClusterManagementAddOns is a map that associates certain component names with their corresponding add-ons.
var LegacyConfigKind = []string{"PrometheusRule", "Service", "ServiceMonitor"}
LegacyConfigKind is a slice of strings that represents the legacy resource kinds supported by the Operator SDK and Prometheus. These kinds include "PrometheusRule", "Service", and "ServiceMonitor".
var MCECRDs = []ResourceGVK{
{
Group: "addon.open-cluster-management.io",
Version: "v1alpha1",
Kind: "ClusterManagementAddOn",
Name: "clustermanagementaddons.addon.open-cluster-management.io",
},
}
var MCEComponents = []string{ MCEAssistedService, MCEClusterLifecycle, MCEClusterManager, MCEClusterProxyAddon, MCEConsole, MCEDiscovery, MCEHive, MCEHypershift, MCEHypershiftLocalHosting, MCEHypershiftPreview, MCEImageBasedInstallOperator, MCEImageBasedInstallOperatorPreview, MCEManagedServiceAccount, MCEManagedServiceAccountPreview, MCEManagedServiceAccount, MCEServerFoundation, }
MCEComponents is a slice containing component names specific to the "MCE" category.
var MCHComponents = []string{ Appsub, ClusterBackup, ClusterLifecycle, ClusterPermission, Console, GRC, Insights, MultiClusterEngine, MCH, MultiClusterObservability, Search, SiteConfig, SubmarinerAddon, Volsync, }
MCHComponents is a slice containing component names specific to the "MCH" category.
var MCHLegacyPrometheusRules = map[string]string{ Console: "acm-console-prometheus-rules", GRC: "ocm-grc-policy-propagator-metrics", }
MCHLegacyPrometheusRules is a map that associates certain component names with their corresponding prometheus rules.
var MCHLegacyServiceMonitors = map[string]string{ Console: "console-monitor", GRC: "ocm-grc-policy-propagator-metrics", Insights: "acm-insights", }
MCHLegacyServiceMonitors is a map that associates certain component names with their corresponding service monitors.
var MCHLegacyServices = map[string]string{}
MCHLegacyServices is a map that associates certain component names with their corresponding services.
Functions ¶
func AvailabilityConfigIsValid ¶
func AvailabilityConfigIsValid(config AvailabilityType) bool
AvailabilityConfigIsValid returns true is the availability type is a recognized value
func GetClusterManagementAddonName ¶
GetClusterManagementAddonName returns the name of the ClusterManagementAddOn based on the provided component name.
func GetDefaultDisabledComponents ¶
GetDefaultDisabledComponents returns a slice of default disabled component names. It is expected to be used to get a list of components that are disabled by default.
func GetDefaultEnabledComponents ¶
GetDefaultEnabledComponents returns a slice of default enabled component names. It is expected to be used to get a list of components that are enabled by default.
func GetLegacyConfigKind ¶
func GetLegacyConfigKind() []string
GetLegacyConfigKind returns a list of legacy kind resources that are required to be removed before updating to ACM 2.9 and later.
func GetLegacyPrometheusRulesName ¶
GetLegacyPrometheusRulesName returns the name of the PrometheusRules based on the provided component name.
func GetLegacyServiceMonitorName ¶
GetLegacyServiceMonitorName returns the name of the ServiceMonitors based on the provided component name.
func GetLegacyServiceName ¶
GetLegacyServiceName returns the name of the Services based on the provided component name.
func IsCommunity ¶
IsCommunity checks to see if the operator is running in community mode
func ValidComponent ¶
func ValidComponent(c ComponentConfig, validComponents []string) bool
ValidComponent checks if a given component configuration is valid by comparing its name to the known component names.
func ValidatingWebhook ¶
func ValidatingWebhook(namespace string) *admissionregistration.ValidatingWebhookConfiguration
ValidatingWebhook returns the ValidatingWebhookConfiguration used for the multiclusterhub linked to a service in the provided namespace
Types ¶
type AvailabilityType ¶
type AvailabilityType string
AvailabilityType ...
const ( // HABasic stands up most app subscriptions with a replicaCount of 1 HABasic AvailabilityType = "Basic" // HAHigh stands up most app subscriptions with a replicaCount of 2 HAHigh AvailabilityType = "High" )
type BackupConfig ¶
type BackupConfig struct { // (Deprecated) Velero specifies configuration for the Velero backup integration. // +optional Velero VeleroBackupConfig `json:"velero,omitempty"` // (Deprecated) MinBackupPeriodSeconds specifies that a minimum of MinBackupPeriodSeconds will occur in between each backup. // This is used to rate limit backups. This potentially batches together multiple changes into 1 backup. // No backups will be lost as changes that happen during this interval are queued up and will result in a // backup happening once the interval has been completed. MinBackupPeriodSeconds *int `json:"minBackupPeriodSeconds,omitempty"` }
BackupConfig contains settings for the Velero backup integration.
func (*BackupConfig) DeepCopy ¶
func (in *BackupConfig) DeepCopy() *BackupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupConfig.
func (*BackupConfig) DeepCopyInto ¶
func (in *BackupConfig) DeepCopyInto(out *BackupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentConfig ¶
type ComponentConfig struct { // Enabled specifies whether the component is enabled or disabled. Enabled bool `json:"enabled"` // Name denotes the name of the component being configured. Name string `json:"name"` // ConfigOverrides contains optional configuration overrides for deployments and containers. ConfigOverrides ConfigOverride `json:"configOverrides,omitempty"` }
ComponentConfig provides optional configuration items for individual components
func (*ComponentConfig) DeepCopy ¶
func (in *ComponentConfig) DeepCopy() *ComponentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentConfig.
func (*ComponentConfig) DeepCopyInto ¶
func (in *ComponentConfig) DeepCopyInto(out *ComponentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigOverride ¶
type ConfigOverride struct { // Deployments is a list of deployment specific configuration overrides. Deployments []DeploymentConfig `json:"deployments,omitempty"` }
ConfigOverride holds overrides for configurations specific to deployments and containers.
func (*ConfigOverride) DeepCopy ¶
func (in *ConfigOverride) DeepCopy() *ConfigOverride
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigOverride.
func (*ConfigOverride) DeepCopyInto ¶
func (in *ConfigOverride) DeepCopyInto(out *ConfigOverride)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerConfig ¶
type ContainerConfig struct { // Name specifies the name of the container being configured. Name string `json:"name"` // Env is a list of environment variable overrides for the container. Env []EnvConfig `json:"env"` }
ContainerConfig holds configuration details for a specific container within a deployment.
func (*ContainerConfig) DeepCopy ¶
func (in *ContainerConfig) DeepCopy() *ContainerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerConfig.
func (*ContainerConfig) DeepCopyInto ¶
func (in *ContainerConfig) DeepCopyInto(out *ContainerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentConfig ¶
type DeploymentConfig struct { // Name specifies the name of the deployment being configured. Name string `json:"name"` // Containers is a list of container specific configurations within the deployment. Containers []ContainerConfig `json:"containers"` }
DeploymentConfig provides configuration details for a specific deployment.
func (*DeploymentConfig) DeepCopy ¶
func (in *DeploymentConfig) DeepCopy() *DeploymentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentConfig.
func (*DeploymentConfig) DeepCopyInto ¶
func (in *DeploymentConfig) DeepCopyInto(out *DeploymentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvConfig ¶
type EnvConfig struct { // Name specifies the name of the environment variable. Name string `json:"name,omitempty"` // Value specifies the value of the environment variable. Value string `json:"value,omitempty"` }
EnvConfig represents an override for an environment variable within a container.
func (*EnvConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvConfig.
func (*EnvConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalDNSAWSConfig ¶
type ExternalDNSAWSConfig struct { // (Deprecated) Credentials references a secret that will be used to authenticate with // AWS Route53. It will need permission to manage entries in each of the // managed domains for this cluster. // Secret should have AWS keys named 'aws_access_key_id' and 'aws_secret_access_key'. Credentials corev1.LocalObjectReference `json:"credentials,omitempty"` }
ExternalDNSAWSConfig contains AWS-specific settings for external DNS
func (*ExternalDNSAWSConfig) DeepCopy ¶
func (in *ExternalDNSAWSConfig) DeepCopy() *ExternalDNSAWSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalDNSAWSConfig.
func (*ExternalDNSAWSConfig) DeepCopyInto ¶
func (in *ExternalDNSAWSConfig) DeepCopyInto(out *ExternalDNSAWSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalDNSConfig ¶
type ExternalDNSConfig struct { // (Deprecated) AWS contains AWS-specific settings for external DNS AWS *ExternalDNSAWSConfig `json:"aws,omitempty"` // (Deprecated) GCP contains GCP-specific settings for external DNS GCP *ExternalDNSGCPConfig `json:"gcp,omitempty"` }
ExternalDNSConfig contains settings for running external-dns in a Hive environment.
func (*ExternalDNSConfig) DeepCopy ¶
func (in *ExternalDNSConfig) DeepCopy() *ExternalDNSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalDNSConfig.
func (*ExternalDNSConfig) DeepCopyInto ¶
func (in *ExternalDNSConfig) DeepCopyInto(out *ExternalDNSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalDNSGCPConfig ¶
type ExternalDNSGCPConfig struct { // (Deprecated) Credentials references a secret that will be used to authenticate with // GCP DNS. It will need permission to manage entries in each of the // managed domains for this cluster. // Secret should have a key names 'osServiceAccount.json'. // The credentials must specify the project to use. Credentials corev1.LocalObjectReference `json:"credentials,omitempty"` }
ExternalDNSGCPConfig contains GCP-specific settings for external DNS
func (*ExternalDNSGCPConfig) DeepCopy ¶
func (in *ExternalDNSGCPConfig) DeepCopy() *ExternalDNSGCPConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalDNSGCPConfig.
func (*ExternalDNSGCPConfig) DeepCopyInto ¶
func (in *ExternalDNSGCPConfig) DeepCopyInto(out *ExternalDNSGCPConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FailedProvisionConfig ¶
type FailedProvisionConfig struct { // (Deprecated) SkipGatherLogs disables functionality that attempts to gather full logs from the cluster if an installation // fails for any reason. The logs will be stored in a persistent volume for up to 7 days. SkipGatherLogs bool `json:"skipGatherLogs,omitempty"` }
FailedProvisionConfig contains settings to control behavior undertaken by Hive when an installation attempt fails.
func (*FailedProvisionConfig) DeepCopy ¶
func (in *FailedProvisionConfig) DeepCopy() *FailedProvisionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailedProvisionConfig.
func (*FailedProvisionConfig) DeepCopyInto ¶
func (in *FailedProvisionConfig) DeepCopyInto(out *FailedProvisionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HiveConfigSpec ¶
type HiveConfigSpec struct { // (Deprecated) ExternalDNS specifies configuration for external-dns if it is to be deployed by // Hive. If absent, external-dns will not be deployed. ExternalDNS *ExternalDNSConfig `json:"externalDNS,omitempty"` // (Deprecated) AdditionalCertificateAuthorities is a list of references to secrets in the // 'hive' namespace that contain an additional Certificate Authority to use when communicating // with target clusters. These certificate authorities will be used in addition to any self-signed // CA generated by each cluster on installation. AdditionalCertificateAuthorities []corev1.LocalObjectReference `json:"additionalCertificateAuthorities,omitempty"` // (Deprecated) GlobalPullSecret is used to specify a pull secret that will be used globally by all of the cluster deployments. // For each cluster deployment, the contents of GlobalPullSecret will be merged with the specific pull secret for // a cluster deployment(if specified), with precedence given to the contents of the pull secret for the cluster deployment. GlobalPullSecret *corev1.LocalObjectReference `json:"globalPullSecret,omitempty"` // (Deprecated) Backup specifies configuration for backup integration. // If absent, backup integration will be disabled. Backup BackupConfig `json:"backup,omitempty"` // (Deprecated) FailedProvisionConfig is used to configure settings related to handling provision failures. FailedProvisionConfig FailedProvisionConfig `json:"failedProvisionConfig"` // (Deprecated) MaintenanceMode can be set to true to disable the hive controllers in situations where we need to ensure // nothing is running that will add or act upon finalizers on Hive types. This should rarely be needed. // Sets replicas to 0 for the hive-controllers deployment to accomplish this. MaintenanceMode *bool `json:"maintenanceMode,omitempty"` }
func (*HiveConfigSpec) DeepCopy ¶
func (in *HiveConfigSpec) DeepCopy() *HiveConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveConfigSpec.
func (*HiveConfigSpec) DeepCopyInto ¶
func (in *HiveConfigSpec) DeepCopyInto(out *HiveConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HiveConfigStatus ¶
type HiveConfigStatus struct { // (Deprecated) AggregatorClientCAHash keeps an md5 hash of the aggregator client CA // configmap data from the openshift-config-managed namespace. When the configmap changes, // admission is redeployed. AggregatorClientCAHash string `json:"aggregatorClientCAHash,omitempty"` }
HiveConfigStatus defines the observed state of Hive
func (*HiveConfigStatus) DeepCopy ¶
func (in *HiveConfigStatus) DeepCopy() *HiveConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveConfigStatus.
func (*HiveConfigStatus) DeepCopyInto ¶
func (in *HiveConfigStatus) DeepCopyInto(out *HiveConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HubCondition ¶
type HubCondition struct { // Type is the type of the cluster condition. // +required Type HubConditionType `json:"type,omitempty"` // Status is the status of the condition. One of True, False, Unknown. // +required Status metav1.ConditionStatus `json:"status,omitempty"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"` // LastTransitionTime is the last time the condition changed from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // Reason is a (brief) reason for the condition's last status change. // +required Reason string `json:"reason,omitempty"` // Message is a human-readable message indicating details about the last status change. // +required Message string `json:"message,omitempty"` }
StatusCondition contains condition information.
func (*HubCondition) DeepCopy ¶
func (in *HubCondition) DeepCopy() *HubCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubCondition.
func (*HubCondition) DeepCopyInto ¶
func (in *HubCondition) DeepCopyInto(out *HubCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HubConditionType ¶
type HubConditionType string
const ( // Progressing means the deployment is progressing. Progressing HubConditionType = "Progressing" // Complete means that all desired components are configured and in a running state. Complete HubConditionType = "Complete" // Terminating means that the multiclusterhub has been deleted and is cleaning up. Terminating HubConditionType = "Terminating" // Bocked means there is something preventing an update from occurring Blocked HubConditionType = "Blocked" // ComponentFailure means a deployment failed during an Apply ComponentFailure HubConditionType = "ComponentFailure" )
type HubPhaseType ¶
type HubPhaseType string
const ( HubPending HubPhaseType = "Pending" HubPaused HubPhaseType = "Paused" HubRunning HubPhaseType = "Running" HubInstalling HubPhaseType = "Installing" HubUpdating HubPhaseType = "Updating" HubUninstalling HubPhaseType = "Uninstalling" HubUpdatingBlocked HubPhaseType = "UpdatingBlocked" HubError HubPhaseType = "Error" )
type IngressSpec ¶
type IngressSpec struct { // List of SSL ciphers enabled for management ingress. Defaults to full list of supported ciphers SSLCiphers []string `json:"sslCiphers,omitempty"` }
IngressSpec specifies configuration options for ingress management
func (*IngressSpec) DeepCopy ¶
func (in *IngressSpec) DeepCopy() *IngressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSpec.
func (*IngressSpec) DeepCopyInto ¶
func (in *IngressSpec) DeepCopyInto(out *IngressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InternalHubComponent ¶
type InternalHubComponent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec InternalHubComponentSpec `json:"spec,omitempty"` }
+kubebuilder:object:root=true +operator-sdk:csv:customresourcedefinitions:displayName="InternalHubComponent"
func (*InternalHubComponent) DeepCopy ¶
func (in *InternalHubComponent) DeepCopy() *InternalHubComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalHubComponent.
func (*InternalHubComponent) DeepCopyInto ¶
func (in *InternalHubComponent) DeepCopyInto(out *InternalHubComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalHubComponent) DeepCopyObject ¶
func (in *InternalHubComponent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalHubComponentList ¶
type InternalHubComponentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []InternalHubComponent `json:"items"` }
+kubebuilder:object:root=true
func (*InternalHubComponentList) DeepCopy ¶
func (in *InternalHubComponentList) DeepCopy() *InternalHubComponentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalHubComponentList.
func (*InternalHubComponentList) DeepCopyInto ¶
func (in *InternalHubComponentList) DeepCopyInto(out *InternalHubComponentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalHubComponentList) DeepCopyObject ¶
func (in *InternalHubComponentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalHubComponentSpec ¶
type InternalHubComponentSpec struct{}
func (*InternalHubComponentSpec) DeepCopy ¶
func (in *InternalHubComponentSpec) DeepCopy() *InternalHubComponentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalHubComponentSpec.
func (*InternalHubComponentSpec) DeepCopyInto ¶
func (in *InternalHubComponentSpec) DeepCopyInto(out *InternalHubComponentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiClusterHub ¶
type MultiClusterHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MultiClusterHubSpec `json:"spec,omitempty"` Status MultiClusterHubStatus `json:"status,omitempty"` }
MulticlusterHub defines the configuration for an instance of a multicluster hub, a central point for managing multiple Kubernetes-based clusters. The deployment of multicluster hub components is determined based on the configuration that is defined in this resource. +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase",description="The overall status of the MultiClusterHub" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="CurrentVersion",type="string",JSONPath=".status.currentVersion",description="The current version of the MultiClusterHub" +kubebuilder:printcolumn:name="DesiredVersion",type="string",JSONPath=".status.desiredVersion",description="The desired version of the MultiClusterHub" +operator-sdk:csv:customresourcedefinitions:displayName="MultiClusterHub"
func (*MultiClusterHub) ComponentPresent ¶
func (mch *MultiClusterHub) ComponentPresent(s string) bool
ComponentPresent checks if a specific component is present based on the provided component name in the MultiClusterHub struct.
func (*MultiClusterHub) DeepCopy ¶
func (in *MultiClusterHub) DeepCopy() *MultiClusterHub
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterHub.
func (*MultiClusterHub) DeepCopyInto ¶
func (in *MultiClusterHub) DeepCopyInto(out *MultiClusterHub)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultiClusterHub) DeepCopyObject ¶
func (in *MultiClusterHub) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MultiClusterHub) Default ¶
func (r *MultiClusterHub) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*MultiClusterHub) Disable ¶
func (mch *MultiClusterHub) Disable(s string)
Disable disables a specific component based on the provided component name in the MultiClusterHub struct.
func (*MultiClusterHub) Enable ¶
func (mch *MultiClusterHub) Enable(s string)
Enable enables a specific component based on the provided component name in the MultiClusterHub struct.
func (*MultiClusterHub) Enabled ¶
func (mch *MultiClusterHub) Enabled(s string) bool
Enabled checks if a specific component is enabled based on the provided component name in the MultiClusterHub struct.
func (*MultiClusterHub) Prune ¶
func (mch *MultiClusterHub) Prune(s string) bool
Prune removes a specific component from the component list in the MultiClusterHub struct. It returns true if changes were made.
func (*MultiClusterHub) SetupWebhookWithManager ¶
func (r *MultiClusterHub) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*MultiClusterHub) ValidateCreate ¶
func (r *MultiClusterHub) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*MultiClusterHub) ValidateDelete ¶
func (r *MultiClusterHub) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*MultiClusterHub) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type MultiClusterHubList ¶
type MultiClusterHubList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MultiClusterHub `json:"items"` }
MultiClusterHubList contains a list of MultiClusterHub
func (*MultiClusterHubList) DeepCopy ¶
func (in *MultiClusterHubList) DeepCopy() *MultiClusterHubList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterHubList.
func (*MultiClusterHubList) DeepCopyInto ¶
func (in *MultiClusterHubList) DeepCopyInto(out *MultiClusterHubList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultiClusterHubList) DeepCopyObject ¶
func (in *MultiClusterHubList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MultiClusterHubSpec ¶
type MultiClusterHubSpec struct { // Override pull secret for accessing MultiClusterHub operand and endpoint images //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image Pull Secret",xDescriptors={"urn:alm:descriptor:io.kubernetes:Secret","urn:alm:descriptor:com.tectonic.ui:advanced"} ImagePullSecret string `json:"imagePullSecret,omitempty"` // Specifies deployment replication for improved availability. Options are: Basic and High (default) //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Availability Configuration",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:select:High","urn:alm:descriptor:com.tectonic.ui:select:Basic"} AvailabilityConfig AvailabilityType `json:"availabilityConfig,omitempty"` // (Deprecated) Install cert-manager into its own namespace //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Separate Certificate Management",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} // +optional SeparateCertificateManagement bool `json:"separateCertificateManagement"` // Set the nodeselectors NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Tolerations causes all components to tolerate any taints. Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // (Deprecated) Overrides for the default HiveConfig spec //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Hive Config",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} Hive *HiveConfigSpec `json:"hive,omitempty"` // (Deprecated) Configuration options for ingress management //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Ingress Management",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"} Ingress IngressSpec `json:"ingress,omitempty"` // Developer Overrides //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Developer Overrides",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} Overrides *Overrides `json:"overrides,omitempty"` // (Deprecated) Provide the customized OpenShift default ingress CA certificate to RHACM //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Custom CA Configmap",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:ConfigMap"} CustomCAConfigmap string `json:"customCAConfigmap,omitempty"` // Disable automatic import of the hub cluster as a managed cluster //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Disable Hub Self Management",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} DisableHubSelfManagement bool `json:"disableHubSelfManagement,omitempty"` // Disable automatic update of ClusterImageSets //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Disable Update ClusterImageSets",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} DisableUpdateClusterImageSets bool `json:"disableUpdateClusterImageSets,omitempty"` // (Deprecated) Enable cluster proxy addon //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Cluster Proxy Addon",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} EnableClusterProxyAddon bool `json:"enableClusterProxyAddon,omitempty"` // (Deprecated) Enable cluster backup //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Cluster Backup",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} // +optional EnableClusterBackup bool `json:"enableClusterBackup"` }
MultiClusterHubSpec defines the desired state of MultiClusterHub
func (*MultiClusterHubSpec) DeepCopy ¶
func (in *MultiClusterHubSpec) DeepCopy() *MultiClusterHubSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterHubSpec.
func (*MultiClusterHubSpec) DeepCopyInto ¶
func (in *MultiClusterHubSpec) DeepCopyInto(out *MultiClusterHubSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiClusterHubStatus ¶
type MultiClusterHubStatus struct { // Represents the running phase of the MultiClusterHub // +optional Phase HubPhaseType `json:"phase"` // CurrentVersion indicates the current version CurrentVersion string `json:"currentVersion,omitempty"` // DesiredVersion indicates the desired version DesiredVersion string `json:"desiredVersion,omitempty"` // Conditions contains the different condition statuses for the MultiClusterHub HubConditions []HubCondition `json:"conditions,omitempty"` // Components []ComponentCondition `json:"manifests,omitempty"` Components map[string]StatusCondition `json:"components,omitempty"` }
MultiClusterHubStatus defines the observed state of MultiClusterHub
func (*MultiClusterHubStatus) DeepCopy ¶
func (in *MultiClusterHubStatus) DeepCopy() *MultiClusterHubStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterHubStatus.
func (*MultiClusterHubStatus) DeepCopyInto ¶
func (in *MultiClusterHubStatus) DeepCopyInto(out *MultiClusterHubStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Overrides ¶
type Overrides struct { // Pull policy of the MultiCluster hub images ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // Provides optional configuration for components, the list of which can be found here: https://github.com/stolostron/multiclusterhub-operator/tree/main/docs/available-components.md //+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Component Configuration",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} // +optional Components []ComponentConfig `json:"components,omitempty"` }
Overrides provides developer overrides for MCH installation
func (*Overrides) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overrides.
func (*Overrides) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceGVK ¶
type ResourceGVK struct { Group string `json:"group"` Kind string `json:"kind"` Name string `json:"name"` Version string `json:"version"` }
func (*ResourceGVK) DeepCopy ¶
func (in *ResourceGVK) DeepCopy() *ResourceGVK
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGVK.
func (*ResourceGVK) DeepCopyInto ¶
func (in *ResourceGVK) DeepCopyInto(out *ResourceGVK)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusCondition ¶
type StatusCondition struct { // The component name Name string `json:"name,omitempty"` // The resource kind this condition represents Kind string `json:"kind,omitempty"` // Available indicates whether this component is considered properly running Available bool `json:"-"` // Type is the type of the cluster condition. // +required Type string `json:"type,omitempty"` // Status is the status of the condition. One of True, False, Unknown. // +required Status metav1.ConditionStatus `json:"status,omitempty"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"-"` // LastTransitionTime is the last time the condition changed from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // Reason is a (brief) reason for the condition's last status change. // +required Reason string `json:"reason,omitempty"` // Message is a human-readable message indicating details about the last status change. // +required Message string `json:"message,omitempty"` }
StatusCondition contains condition information.
func (*StatusCondition) DeepCopy ¶
func (in *StatusCondition) DeepCopy() *StatusCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCondition.
func (*StatusCondition) DeepCopyInto ¶
func (in *StatusCondition) DeepCopyInto(out *StatusCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VeleroBackupConfig ¶
type VeleroBackupConfig struct { // (Deprecated) Enabled dictates if Velero backup integration is enabled. // If not specified, the default is disabled. Enabled bool `json:"enabled,omitempty"` }
VeleroBackupConfig contains settings for the Velero backup integration.
func (*VeleroBackupConfig) DeepCopy ¶
func (in *VeleroBackupConfig) DeepCopy() *VeleroBackupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VeleroBackupConfig.
func (*VeleroBackupConfig) DeepCopyInto ¶
func (in *VeleroBackupConfig) DeepCopyInto(out *VeleroBackupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.