Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewController ¶
func NewController(controlCtx *ControlClusterContext, targetCtx *TargetClusterContext) *common.Controller
NewController creates a new instance of Controller which in turn is capable of replicating Ingress resources.
Types ¶
type ControlClusterContext ¶
type ControlClusterContext struct {
// ResourceNamespace determines the location of replicated Ingress resources.
EventInformer cache.SharedIndexInformer
EventLister corev1.EventLister
EventSync cache.InformerSynced
CertificatesLister cache.GenericLister
CertificatesSync cache.InformerSynced
Client kubernetes.Interface
}
ControlClusterContext holds information about the control cluster.
type EventHandler ¶
type EventHandler struct {
Queue workqueue.RateLimitingInterface
}
EventHandler dispatches events to a queue of type RateLimitingInterface.
func (*EventHandler) OnAdd ¶
func (e *EventHandler) OnAdd(obj interface{})
OnAdd events are ignored yet.
func (*EventHandler) OnDelete ¶
func (e *EventHandler) OnDelete(obj interface{})
OnDelete events are ignored yet.
func (*EventHandler) OnUpdate ¶
func (e *EventHandler) OnUpdate(oldObj, newObj interface{})
OnUpdate puts the object to the queue in case a new K8s Event was recorded.
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler holds information about the traget and control cluster.
func (*Handler) GetInformerSyncs ¶
func (h *Handler) GetInformerSyncs() []cache.InformerSynced
GetInformerSyncs gets the informer sync functions to be waited for before using the handlers listers
func (*Handler) GetWorkQueue ¶
func (h *Handler) GetWorkQueue() workqueue.RateLimitingInterface
GetWorkQueue gets the workqueue managed by this handler
type TargetClusterContext ¶
type TargetClusterContext struct {
Client kubernetes.Interface
IngressLister lv1beta1.IngressLister
IngressSync cache.InformerSynced
}
TargetClusterContext holds information about the target cluster.