Merge pull request #1233 from aledbf/avoid-sync

[nginx-ingress-controller]: Avoid sync without a reachable master
This commit is contained in:
Prashanth B 2016-06-22 22:44:12 -07:00 committed by GitHub
commit 7e8760b9db
2 changed files with 19 additions and 6 deletions

View file

@ -420,13 +420,19 @@ func (lbc *loadBalancerController) sync(key string) error {
return fmt.Errorf("deferring sync till endpoints controller has synced") return fmt.Errorf("deferring sync till endpoints controller has synced")
} }
var cfg *api.ConfigMap // by default no custom configuration configmap
cfg := &api.ConfigMap{}
ns, name, _ := parseNsName(lbc.nxgConfigMap) if lbc.nxgConfigMap != "" {
cfg, err := lbc.getConfigMap(ns, name) // Search for custom configmap (defined in main args)
if err != nil { var err error
glog.V(3).Infof("unexpected error searching configmap %v: %v", lbc.nxgConfigMap, err) ns, name, _ := parseNsName(lbc.nxgConfigMap)
cfg = &api.ConfigMap{} cfg, err = lbc.getConfigMap(ns, name)
if err != nil {
glog.V(3).Infof("unexpected error searching configmap %v: %v", lbc.nxgConfigMap, err)
lbc.syncQueue.requeue(key, err)
return
}
} }
ngxConfig := lbc.nginx.ReadConfig(cfg) ngxConfig := lbc.nginx.ReadConfig(cfg)

View file

@ -130,6 +130,13 @@ func main() {
} }
glog.Infof("Validated %v as the default backend", *defaultSvc) glog.Infof("Validated %v as the default backend", *defaultSvc)
if *nxgConfigMap != "" {
_, _, err := parseNsName(*nxgConfigMap)
if err != nil {
glog.Fatalf("configmap error: %v", err)
}
}
lbc, err := newLoadBalancerController(kubeClient, *resyncPeriod, *defaultSvc, *watchNamespace, *nxgConfigMap, *tcpConfigMapName, *udpConfigMapName, runtimePodInfo) lbc, err := newLoadBalancerController(kubeClient, *resyncPeriod, *defaultSvc, *watchNamespace, *nxgConfigMap, *tcpConfigMapName, *udpConfigMapName, runtimePodInfo)
if err != nil { if err != nil {
glog.Fatalf("%v", err) glog.Fatalf("%v", err)