genericactuator

package
v1.6.1 Latest Latest
Warning

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

Go to latest
Published: Apr 7, 2020 License: Apache-2.0, MIT Imports: 37 Imported by: 30

Documentation

Index

Constants

View Source
const GardenPurposeMachineClass = "machineclass"

GardenPurposeMachineClass is a constant for the 'machineclass' value in a label.

View Source
const McmDeploymentName = "machine-controller-manager"

McmDeploymentName is the name of the deployment that spawn machine-cotroll-manager pods

View Source
const McmShootResourceName = "extension-worker-mcm-shoot"

McmShootResourceName is the name of the managed resource that contains the Machine Controller Manager

Variables

This section is empty.

Functions

func NewActuator

func NewActuator(logger logr.Logger, delegateFactory DelegateFactory, mcmName string, mcmSeedChart, mcmShootChart util.Chart, imageVector imagevector.ImageVector, chartRendererFactory extensionscontroller.ChartRendererFactory) worker.Actuator

NewActuator creates a new Actuator that reconciles Worker resources of Gardener's `extensions.gardener.cloud` API group. It provides a default implementation that allows easier integration of providers.

Types

type DelegateFactory

type DelegateFactory interface {
	// WorkerDelegate returns a worker delegate interface that is used for the Worker reconciliation
	// based on this generic actuator.
	WorkerDelegate(context.Context, *extensionsv1alpha1.Worker, *extensionscontroller.Cluster) (WorkerDelegate, error)
}

DelegateFactory acts upon Worker resources.

type ReplicaCount

type ReplicaCount func() (int32, error)

ReplicaCount determines the number of replicas.

type WorkerDelegate

type WorkerDelegate interface {
	// GetMachineControllerManagerChart should return the the chart and the values for the machine-controller-manager
	// deployment.
	GetMachineControllerManagerChartValues(context.Context) (map[string]interface{}, error)
	// GetMachineControllerManagerShootChart should return the values to render the chart containing resources
	// that are required by the machine-controller-manager inside the shoot cluster itself.
	GetMachineControllerManagerShootChartValues(context.Context) (map[string]interface{}, error)

	// MachineClassKind yields the name of the provider specific machine class.
	MachineClassKind() string
	// MachineClassList yields a newly initialized machine class list object.
	MachineClassList() runtime.Object
	// DeployMachineClasses generates and creates the provider specific machine classes.
	DeployMachineClasses(context.Context) error

	// GenerateMachineDeployments generates the configuration for the desired machine deployments.
	GenerateMachineDeployments(context.Context) (worker.MachineDeployments, error)

	// GetMachineImages returns the list of used machine images for this `Worker` resource. It will be stored in the
	// `.status.providerStatus` field of the `Worker` resource such that the controller can look up its provider-specific
	// machine image information in case the required version has been removed from its componentconfig.
	GetMachineImages(context.Context) (runtime.Object, error)
}

WorkerDelegate is used for the Worker reconciliation.

Jump to

Keyboard shortcuts

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