From 0287024598732553848f4e35b0850041c11aaf99 Mon Sep 17 00:00:00 2001 From: Manuel de Brito Fontes Date: Thu, 18 Jan 2018 20:04:40 -0300 Subject: [PATCH] Add event for configmap update --- internal/ingress/controller/nginx.go | 4 ++++ internal/ingress/controller/store/store.go | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/internal/ingress/controller/nginx.go b/internal/ingress/controller/nginx.go index 3d859b7be..76519b492 100644 --- a/internal/ingress/controller/nginx.go +++ b/internal/ingress/controller/nginx.go @@ -291,6 +291,10 @@ func (n *NGINXController) Start() { break } glog.V(3).Infof("Event %v received - object %v", evt.Type, evt.Obj) + if evt.Type == store.ConfigurationEvent { + n.SetForceReload(true) + } + n.syncQueue.Enqueue(evt.Obj) case <-n.stopCh: break diff --git a/internal/ingress/controller/store/store.go b/internal/ingress/controller/store/store.go index bf9ae2566..ac9479eb2 100644 --- a/internal/ingress/controller/store/store.go +++ b/internal/ingress/controller/store/store.go @@ -108,6 +108,8 @@ const ( UpdateEvent EventType = "UPDATE" // DeleteEvent event associated when an object is removed from an informer DeleteEvent EventType = "DELETE" + // ConfigurationEvent event associated when a configuration object is created or updated + ConfigurationEvent EventType = "CONFIGURATION" ) // Event holds the context of an event @@ -365,7 +367,7 @@ func New(checkOCSP bool, glog.V(2).Infof("updating configmap backend (%v)", mapKey) store.setConfig(m) updateCh <- Event{ - Type: UpdateEvent, + Type: ConfigurationEvent, Obj: cur, } } @@ -373,7 +375,7 @@ func New(checkOCSP bool, if mapKey == configmap || mapKey == tcp || mapKey == udp { recorder.Eventf(m, apiv1.EventTypeNormal, "UPDATE", fmt.Sprintf("ConfigMap %v", mapKey)) updateCh <- Event{ - Type: UpdateEvent, + Type: ConfigurationEvent, Obj: cur, } }