reconciler

package
v0.17.3 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SetupEnvVars

func SetupEnvVars(ctx context.Context, vsphereDatacenter *anywherev1.VSphereDatacenterConfig, cli client.Client) error

func VsphereCredentials

func VsphereCredentials(ctx context.Context, cli client.Client) (*apiv1.Secret, error)

Types

type CNIReconciler added in v0.13.0

type CNIReconciler interface {
	Reconcile(ctx context.Context, logger logr.Logger, client client.Client, spec *c.Spec) (controller.Result, error)
}

CNIReconciler is an interface for reconciling CNI in the VSphere cluster reconciler.

type IPValidator added in v0.13.0

type IPValidator interface {
	ValidateControlPlaneIP(ctx context.Context, log logr.Logger, spec *c.Spec) (controller.Result, error)
}

IPValidator is an interface that defines methods to validate the control plane IP.

type Reconciler

type Reconciler struct {
	*serverside.ObjectApplier
	// contains filtered or unexported fields
}

func New

func New(client client.Client, validator *vsphere.Validator, defaulter *vsphere.Defaulter, cniReconciler CNIReconciler, remoteClientRegistry RemoteClientRegistry, ipValidator IPValidator) *Reconciler

New defines a new VSphere reconciler.

func (*Reconciler) CheckControlPlaneReady added in v0.13.0

func (r *Reconciler) CheckControlPlaneReady(ctx context.Context, log logr.Logger, clusterSpec *c.Spec) (controller.Result, error)

CheckControlPlaneReady checks whether the control plane for an eks-a cluster is ready or not. Requeues with the appropriate wait times whenever the cluster is not ready yet.

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile(ctx context.Context, log logr.Logger, cluster *anywherev1.Cluster) (controller.Result, error)

func (*Reconciler) ReconcileCNI added in v0.13.0

func (r *Reconciler) ReconcileCNI(ctx context.Context, log logr.Logger, clusterSpec *c.Spec) (controller.Result, error)

ReconcileCNI takes the Cilium CNI in a cluster to the desired state defined in a cluster spec.

func (*Reconciler) ReconcileControlPlane added in v0.13.0

func (r *Reconciler) ReconcileControlPlane(ctx context.Context, log logr.Logger, spec *c.Spec) (controller.Result, error)

ReconcileControlPlane applies the control plane CAPI objects to the cluster.

func (*Reconciler) ReconcileWorkerNodes added in v0.13.0

func (r *Reconciler) ReconcileWorkerNodes(ctx context.Context, log logr.Logger, cluster *anywherev1.Cluster) (controller.Result, error)

ReconcileWorkerNodes validates the cluster definition and reconciles the worker nodes to the desired state.

func (*Reconciler) ReconcileWorkers added in v0.13.0

func (r *Reconciler) ReconcileWorkers(ctx context.Context, log logr.Logger, spec *c.Spec) (controller.Result, error)

ReconcileWorkers applies the worker CAPI objects to the cluster.

func (*Reconciler) ValidateDatacenterConfig added in v0.13.0

func (r *Reconciler) ValidateDatacenterConfig(ctx context.Context, log logr.Logger, clusterSpec *c.Spec) (controller.Result, error)

ValidateDatacenterConfig updates the cluster status if the VSphereDatacenter status indicates that the spec is invalid.

func (*Reconciler) ValidateMachineConfigs added in v0.13.0

func (r *Reconciler) ValidateMachineConfigs(ctx context.Context, log logr.Logger, clusterSpec *c.Spec) (controller.Result, error)

ValidateMachineConfigs performs additional, context-aware validations on the machine configs.

type RemoteClientRegistry added in v0.13.0

type RemoteClientRegistry interface {
	GetClient(ctx context.Context, cluster client.ObjectKey) (client.Client, error)
}

RemoteClientRegistry is an interface that defines methods for remote clients.

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL