Documentation
¶
Index ¶
Constants ¶
View Source
const ( HostedClusterAnnotation = "hypershift.openshift.io/cluster" ImageStreamCAPI = "cluster-capi-controllers" ImageStreamAutoscalerImage = "cluster-autoscaler" ImageStreamClusterMachineApproverImage = "cluster-machine-approver" )
Variables ¶
View Source
var NoopReconcile controllerutil.MutateFn = func() error { return nil }
NoopReconcile is just a default mutation function that does nothing.
Functions ¶
func GetControlPlaneOperatorImage ¶
func GetControlPlaneOperatorImage(ctx context.Context, hc *hyperv1.HostedCluster, releaseProvider releaseinfo.Provider, hypershiftOperatorImage string, pullSecret []byte) (string, error)
GetControlPlaneOperatorImage resolves the appropriate control plane operator image based on the following order of precedence (from most to least preferred):
- The image specified by the ControlPlaneOperatorImageAnnotation on the HostedCluster resource itself
- The hypershift image specified in the release payload indicated by the HostedCluster's release field
- The hypershift-operator's own image for release versions 4.9 and 4.10
- The registry.ci.openshift.org/hypershift/hypershift:4.8 image for release version 4.8
If no image can be found according to these rules, an error is returned.
func SetupWebhookWithManager ¶
SetupWebhookWithManager sets up HostedCluster webhooks.
Types ¶
type ClusterMachineApproverConfig ¶
type ClusterMachineApproverConfig struct {
NodeClientCert NodeClientCert `json:"nodeClientCert,omitempty"`
}
type HostedClusterReconciler ¶
type HostedClusterReconciler struct {
client.Client
// ManagementClusterCapabilities can be asked for support of optional management cluster capabilities
ManagementClusterCapabilities capabilities.CapabiltyChecker
// HypershiftOperatorImage is the image used to deploy the control plane operator if
// 1) There is no hypershift.openshift.io/control-plane-operator-image annotation on the HostedCluster and
// 2) The OCP version being deployed is the latest version supported by Hypershift
HypershiftOperatorImage string
// ReleaseProvider looks up the OCP version for the release images in HostedClusters
ReleaseProvider releaseinfo.ProviderWithRegistryOverrides
// SetDefaultSecurityContext is used to configure Security Context for containers
SetDefaultSecurityContext bool
// Clock is used to determine the time in a testable way.
Clock clock.WithTickerAndDelayedExecution
EnableOCPClusterMonitoring bool
EnableCIDebugOutput bool
PrivatePlatform hyperv1.PlatformType
OIDCStorageProviderS3BucketName string
S3Client s3iface.S3API
ImageMetadataProvider hyperutil.ImageMetadataProvider
MetricsSet metrics.MetricsSet
// contains filtered or unexported fields
}
HostedClusterReconciler reconciles a HostedCluster object
func (*HostedClusterReconciler) SetupWithManager ¶
func (r *HostedClusterReconciler) SetupWithManager(mgr ctrl.Manager, createOrUpdate upsert.CreateOrUpdateProvider) error
type KeyResponse ¶
type KeyResponse struct {
Keys []jose.JSONWebKey `json:"keys"`
}
type NodeClientCert ¶
type NodeClientCert struct {
Disabled bool `json:"disabled,omitempty"`
}
type Webhook ¶
type Webhook struct{}
Webhook implements a validating webhook for HostedCluster.
func (*Webhook) ValidateCreate ¶
ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type.
func (*Webhook) ValidateDelete ¶
ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.