Commit eb8d5a11 authored by Geoff Simmons's avatar Geoff Simmons

Fix Secret syncs.

parent b3eea0ee
......@@ -117,6 +117,18 @@ func (worker *NamespaceWorker) updateVarnishSvcsForSecret(
return nil
}
func (worker *NamespaceWorker) setSecret(secret *api_v1.Secret) error {
secretData, exists := secret.Data[admSecretKey]
if !exists {
return fmt.Errorf("Secret %s/%s does not have key %s",
secret.Namespace, secret.Name, admSecretKey)
}
secretKey := secret.Namespace + "/" + secret.Name
worker.log.Tracef("Setting secret %s", secretKey)
worker.vController.SetAdmSecret(secretKey, secretData)
return nil
}
func (worker *NamespaceWorker) syncSecret(key string) error {
worker.log.Infof("Syncing Secret: %s/%s", worker.namespace, key)
secret, err := worker.secr.Get(key)
......@@ -145,15 +157,11 @@ func (worker *NamespaceWorker) syncSecret(key string) error {
return worker.updateVcfgsForSecret(secret.Name)
}
secretData, exists := secret.Data[admSecretKey]
if !exists {
return fmt.Errorf("Secret %s/%s does not have key %s",
secret.Namespace, secret.Name, admSecretKey)
err = worker.setSecret(secret)
if err != nil {
return err
}
secretKey := secret.Namespace + "/" + secret.Name
worker.log.Tracef("Setting secret %s", secretKey)
worker.vController.SetAdmSecret(secretKey, secretData)
return worker.updateVarnishSvcsForSecret(svcs, secretKey)
}
......
......@@ -202,9 +202,18 @@ func (worker *NamespaceWorker) syncSvc(key string) error {
}
}
if secrName != "" {
secrName = worker.namespace + "/" + secrName
worker.log.Infof("Found secret name %s for Service %s/%s",
secrName, svc.Namespace, svc.Name)
worker.log.Infof("Found secret name %s/%s for Service %s/%s",
worker.namespace, secrName, svc.Namespace, svc.Name)
if secret, err := worker.secr.Get(secrName); err == nil {
err = worker.setSecret(secret)
if err != nil {
return err
}
} else {
worker.log.Warnf("Cannot get Secret %s: %v", secrName,
err)
}
} else {
worker.log.Warnf("No secret found for Service %s/%s",
svc.Namespace, svc.Name)
......@@ -235,7 +244,8 @@ func (worker *NamespaceWorker) syncSvc(key string) error {
worker.log.Tracef("Varnish service %s/%s addresses: %+v", svc.Namespace,
svc.Name, addrs)
return worker.vController.AddOrUpdateVarnishSvc(
svc.Namespace+"/"+svc.Name, addrs, secrName, !updateVCL)
svc.Namespace+"/"+svc.Name, addrs,
worker.namespace+"/"+secrName, !updateVCL)
}
func (worker *NamespaceWorker) addSvc(key string) error {
......
......@@ -540,6 +540,11 @@ func (vc *Controller) AddOrUpdateVarnishSvc(key string, addrs []vcl.Address,
vc.log.Tracef("Update Varnish svc %s: addrs=%+v secret=%s reloadVCL=%v",
key, addrs, secrName, loadVCL)
if secrPtr != nil {
vc.log.Tracef("secret contents = %v", *secrPtr)
} else {
vc.log.Trace("secret is nil")
}
return vc.updateVarnishSvcAddrs(key, addrs, secrPtr, loadVCL)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment