Documentation

Index

Constants

View Source
const (
	// ReasonRollingUpdateProgressing indicates that a rolling update is in progress
	ReasonRollingUpdateProgressing = "RollingUpdateProgressing"
	// ReasonNoRollingUpdate indicates that no rolling update is currently in progress
	ReasonNoRollingUpdate = "NoRollingUpdate"
)
View Source
const (
	// McmShootResourceName is the name of the managed resource that contains the Machine Controller Manager
	McmShootResourceName = "extension-worker-mcm-shoot"

	// McmDeploymentName is the name of the deployment that spawn machine-cotroll-manager pods
	McmDeploymentName = "machine-controller-manager"
)
View Source
const GardenPurposeMachineClass = "machineclass"

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

    Variables

    This section is empty.

    Functions

    func NewActuator

    func NewActuator(logger logr.Logger, delegateFactory DelegateFactory, mcmName string, mcmSeedChart, mcmShootChart chart.Interface, 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.

      func ReadMachineConfiguration

      func ReadMachineConfiguration(pool extensionsv1alpha1.WorkerPool) *machinev1alpha1.MachineConfiguration

        ReadMachineConfiguration reads the configuration from worker-pool and returns the corresponding configuration of machine-deployment.

        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 WorkerCredentialsDelegate

            type WorkerCredentialsDelegate interface {
            	// GetMachineControllerManagerCloudCredentials should return the IaaS credentials
            	// with the secret keys used by the machine-controller-manager.
            	GetMachineControllerManagerCloudCredentials(context.Context) (map[string][]byte, error)
            }

              WorkerCredentialsDelegate is an interface that can optionally be implemented to be used during the Worker reconciliation to keep all machine class secrets up to date. DEPRECATED: extensions should instead provide credentials only (!) via the machine class field .spec.credentialsSecretRef referencing the Worker's secret reference (spec.SecretRef). This way all machine classes reference the same secret - there is no need anymore to update all machine class secrets. please see [here](https://github.com/gardener/machine-controller-manager/pull/578) for more details

              type WorkerDelegate

              type WorkerDelegate interface {
              	// GetMachineControllerManagerChartValues should return the chart and the values for the machine-controller-manager
              	// deployment.
              	GetMachineControllerManagerChartValues(context.Context) (map[string]interface{}, error)
              	// GetMachineControllerManagerShootChartValues 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
              	// MachineClass yields a newly initialized machine class object.
              	MachineClass() client.Object
              	// MachineClassList yields a newly initialized machine class list object.
              	MachineClassList() client.ObjectList
              	// 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)
              
              	// UpdateMachineImagesStatus will store a list of machine images used by the
              	// machines associated with this Worker resource in its provider status.
              	// The controller can look up its provider-specific machine image information
              	// in case the required version has been removed from the `CloudProfile`.
              	UpdateMachineImagesStatus(context.Context) error
              
              	// DeployMachineDependencies is a hook to create external machine dependencies.
              	DeployMachineDependencies(context.Context) error
              
              	// CleanupMachineDependencies is a hook to cleanup external machine dependencies.
              	CleanupMachineDependencies(context.Context) error
              }

                WorkerDelegate is used for the Worker reconciliation.