Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // KeyFunc KeyFunc = cache.DeletionHandlingMetaNamespaceKeyFunc )
Functions ¶
func Known ¶
func Known() map[string]Constructor
Known returns a map of the registered controller Constructors
func Register ¶
func Register(name string, fn Constructor)
Register registers a controller constructor with the controller package
Types ¶
type BlockingEventHandler ¶
type BlockingEventHandler struct {
WorkFunc func(obj interface{})
}
BlockingEventHandler is an implementation of cache.ResourceEventHandler that simply synchronously calls it's WorkFunc upon calls to OnAdd, OnUpdate or OnDelete.
func (*BlockingEventHandler) Enqueue ¶
func (b *BlockingEventHandler) Enqueue(obj interface{})
Enqueue runs WorkFunc on obj
func (*BlockingEventHandler) OnAdd ¶
func (b *BlockingEventHandler) OnAdd(obj interface{})
OnAdd enqueue obj
func (*BlockingEventHandler) OnDelete ¶
func (b *BlockingEventHandler) OnDelete(obj interface{})
OnDelete enqueue deleted obj
func (*BlockingEventHandler) OnUpdate ¶
func (b *BlockingEventHandler) OnUpdate(old, new interface{})
OnUpdate enqueue new object
type Constructor ¶
Constructor is a function that creates a new control loop given a controller Context.
type Context ¶
type Context struct {
// KubeClient is a Kubernetes clientset
KubeClient kubernetes.Interface
// Client is a mysql clientset
Client clientset.Interface
// Recorder to record events to
Recorder record.EventRecorder
// SharedIndexInformer instances for Kubernetes types
KubeSharedInformerFactory kubeinformers.SharedInformerFactory
// instances
SharedInformerFactory informers.SharedInformerFactory
// Namespace is a namespace to operate within. This should be used when
// constructing SharedIndexInformers for the informer factory.
Namespace string
// InstallCRDs specifies if to install or not CRDs
InstallCRDs bool
// CRDClient is the clientset for Custom Resource Definitions
CRDClient apiext_clientset.Interface
}
Context contains the info that controller needs in order to run
type Interface ¶
Interface represents a controller that can run. 'workers' should be the number of independent goroutines for this controller in question that are to be run, and the workers should shut down upon a signal on stopCh. This method should block until all workers have exited cleanly, thus allowing for graceful shutdown of control loops.
type QueuingEventHandler ¶
type QueuingEventHandler struct {
Queue workqueue.RateLimitingInterface
}
QueuingEventHandler is an implementation of cache.ResourceEventHandler that simply queues objects that are added/updated/deleted.
func (*QueuingEventHandler) Enqueue ¶
func (q *QueuingEventHandler) Enqueue(obj interface{})
Enqueue puts object to queue
func (*QueuingEventHandler) OnAdd ¶
func (q *QueuingEventHandler) OnAdd(obj interface{})
OnAdd is the method that enqueue obj
func (*QueuingEventHandler) OnDelete ¶
func (q *QueuingEventHandler) OnDelete(obj interface{})
OnDelete enqueue the deleted object
func (*QueuingEventHandler) OnUpdate ¶
func (q *QueuingEventHandler) OnUpdate(old, new interface{})
OnUpdate enqueue new object