diff --git a/pkg/ingress/controller/controller.go b/pkg/ingress/controller/controller.go index 855940d54..7266b22c8 100644 --- a/pkg/ingress/controller/controller.go +++ b/pkg/ingress/controller/controller.go @@ -318,7 +318,7 @@ func (ic *GenericController) syncIngress(item interface{}) error { setSSLExpireTime(servers) ic.runningConfig = &pcfg - ic.setForceReload(false) + ic.SetForceReload(false) return nil } @@ -1250,9 +1250,10 @@ func (ic *GenericController) isForceReload() bool { return atomic.LoadInt32(&ic.forceReload) != 0 } -func (ic *GenericController) setForceReload(shouldReload bool) { +func (ic *GenericController) SetForceReload(shouldReload bool) { if shouldReload { atomic.StoreInt32(&ic.forceReload, 1) + ic.syncQueue.Enqueue(&extensions.Ingress{}) } else { atomic.StoreInt32(&ic.forceReload, 0) } diff --git a/pkg/ingress/controller/listers.go b/pkg/ingress/controller/listers.go index e59af7088..a2da1ab1f 100644 --- a/pkg/ingress/controller/listers.go +++ b/pkg/ingress/controller/listers.go @@ -172,7 +172,7 @@ func (ic *GenericController) createListers(disableNodeLister bool) (*ingress.Sto if mapKey == ic.cfg.ConfigMapName { glog.V(2).Infof("adding configmap %v to backend", mapKey) ic.cfg.Backend.SetConfig(upCmap) - ic.setForceReload(true) + ic.SetForceReload(true) } }, UpdateFunc: func(old, cur interface{}) { @@ -182,7 +182,7 @@ func (ic *GenericController) createListers(disableNodeLister bool) (*ingress.Sto if mapKey == ic.cfg.ConfigMapName { glog.V(2).Infof("updating configmap backend (%v)", mapKey) ic.cfg.Backend.SetConfig(upCmap) - ic.setForceReload(true) + ic.SetForceReload(true) } // updates to configuration configmaps can trigger an update if mapKey == ic.cfg.ConfigMapName || mapKey == ic.cfg.TCPConfigMapName || mapKey == ic.cfg.UDPConfigMapName { diff --git a/pkg/nginx/controller/nginx.go b/pkg/nginx/controller/nginx.go index 3139fcb7e..55796c50b 100644 --- a/pkg/nginx/controller/nginx.go +++ b/pkg/nginx/controller/nginx.go @@ -106,6 +106,7 @@ Error loading new template : %v n.t.Close() n.t = template glog.Info("new NGINX template loaded") + n.controller.SetForceReload(true) } ngxTpl, err := ngx_template.NewTemplate(tmplPath, onChange)