Documentation ¶
Overview ¶
Package controller is used to provide the core functionalities of machine-controller-manager
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager ¶
Package controller is used to provide the core functionalities of machine-controller-manager
Index ¶
- Constants
- func GetClientForController(credential map[string]string) (*govcd.VCDClient, error)
- func GetVdcByName(client *govcd.VCDClient, Org string, VDC string) (*govcd.Vdc, error)
- func Login(User string, Password string, Org string, HREF string) (*govcd.VCDClient, error)
- func SyncMachineAnnotations(machine *v1alpha1.Machine, node *v1.Node, ...) bool
- func SyncMachineLabels(machine *v1alpha1.Machine, node *v1.Node, lastAppliedLabels map[string]string) bool
- func SyncMachineTaints(machine *v1alpha1.Machine, node *v1.Node, lastAppliedTaints []v1.Taint) bool
- type Controller
Constants ¶
View Source
const ( // ClassAnnotation is the annotation used to identify a machine class ClassAnnotation = "machine.sapcloud.io/class" // MachineIDAnnotation is the annotation used to identify a machine ID MachineIDAnnotation = "machine.sapcloud.io/id" // MCMFinalizerName is the finalizer used to tag dependecies before deletion // of the object. This finalizer is carried over from the MCM MCMFinalizerName = "machine.sapcloud.io/machine-controller-manager" // MCFinalizerName is the finalizer created for the external // machine controller to differentiate it from the MCMFinalizerName // This finalizer is added only on secret-objects to avoid race between in-tree and out-of-tree controllers. // This is a stopgap solution to resolve: https://github.com/xuanson2406/machine-controller-manager/issues/486. MCFinalizerName = "machine.sapcloud.io/machine-controller" )
View Source
const ( // OverShootingReplicaCount freeze reason when replica count overshoots OverShootingReplicaCount = "OverShootingReplicaCount" // MachineDeploymentStateSync freeze reason when machineDeployment was found with inconsistent state MachineDeploymentStateSync = "MachineDeploymentStateSync" // TimeoutOccurred freeze reason when machineSet timeout occurs TimeoutOccurred = "MachineSetTimeoutOccurred" // UnfreezeAnnotation indicates the controllers to unfreeze this object UnfreezeAnnotation = "safety.machine.sapcloud.io/unfreeze" )
View Source
const ( // AlicloudMachineClassKind is used to identify the machineClassKind as Alicloud AlicloudMachineClassKind = "AlicloudMachineClass" // AWSMachineClassKind is used to identify the machineClassKind as AWS AWSMachineClassKind = "AWSMachineClass" // AzureMachineClassKind is used to identify the machineClassKind as Azure AzureMachineClassKind = "AzureMachineClass" // GCPMachineClassKind is used to identify the machineClassKind as GCP GCPMachineClassKind = "GCPMachineClass" // OpenStackMachineClassKind is used to identify the machineClassKind as OpenStack OpenStackMachineClassKind = "OpenStackMachineClass" // PacketMachineClassKind is used to identify the machineClassKind as Packet PacketMachineClassKind = "PacketMachineClass" // MachineController is the string constant to identify the controller responsible for the migration MachineController = "machine-controller" )
Variables ¶
This section is empty.
Functions ¶
func GetClientForController ¶
func GetVdcByName ¶
func SyncMachineAnnotations ¶
func SyncMachineAnnotations( machine *v1alpha1.Machine, node *v1.Node, lastAppliedAnnotations map[string]string, ) bool
SyncMachineAnnotations syncs the annotations of the machine with node-objects. It returns true if update is needed else false.
Types ¶
type Controller ¶
type Controller interface { // Run runs the controller until the given stop channel can be read from. // workers specifies the number of goroutines, per resource, processing work // from the resource workqueues Run(workers int, stopCh <-chan struct{}) }
Controller describes a controller for
func NewController ¶
func NewController( namespace string, controlMachineClient machineapi.MachineV1alpha1Interface, controlCoreClient kubernetes.Interface, targetCoreClient kubernetes.Interface, driver driver.Driver, pvcInformer coreinformers.PersistentVolumeClaimInformer, pvInformer coreinformers.PersistentVolumeInformer, secretInformer coreinformers.SecretInformer, nodeInformer coreinformers.NodeInformer, machineClassInformer machineinformers.MachineClassInformer, machineInformer machineinformers.MachineInformer, recorder record.EventRecorder, safetyOptions options.SafetyOptions, nodeConditions string, bootstrapTokenAuthExtraGroups string, ) (Controller, error)
NewController returns a new Node controller.
Click to show internal directories.
Click to hide internal directories.