Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewController ¶
func NewController(controlCtx *ControlClusterContext, targetCtx *TargetClusterContext, ingressTemplate *utils.IngressTemplate, domainToDNSProvider map[string]string) *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. ResourceNamespace string Client kubernetes.Interface IngressLister lv1beta1.IngressLister IngressSync cache.InformerSynced SecretLister v1.SecretLister SecretSync cache.InformerSynced }
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 adds the object to the queue in case of an add event.
func (*EventHandler) OnDelete ¶
func (e *EventHandler) OnDelete(obj interface{})
OnDelete adds the object to the queue in case of a deletion event.
func (*EventHandler) OnUpdate ¶
func (e *EventHandler) OnUpdate(oldObj, newObj interface{})
OnUpdate takes two Ingress objects and puts the newObj to the queue if the TLS object differs.
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 IngressInformer cache.SharedIndexInformer IngressLister lv1beta1.IngressLister IngressSync cache.InformerSynced }
TargetClusterContext holds information about the target cluster.