in pkg/client/clients.go [70:99]
func (c *Clients) WaitForSync() {
syncStartTime := time.Now()
counter := 0
for {
if c.ConfigMapInformer.Informer().HasSynced() &&
c.CSIDriverInformer.Informer().HasSynced() &&
c.CSINodeInformer.Informer().HasSynced() &&
c.CSIStorageCapacityInformer.Informer().HasSynced() &&
c.NamespaceInformer.Informer().HasSynced() &&
c.NodeInformer.Informer().HasSynced() &&
c.PodInformer.Informer().HasSynced() &&
c.PriorityClassInformer.Informer().HasSynced() &&
c.PVCInformer.Informer().HasSynced() &&
c.PVInformer.Informer().HasSynced() &&
c.ReplicaSetInformer.Informer().HasSynced() &&
c.ReplicationControllerInformer.Informer().HasSynced() &&
c.ServiceInformer.Informer().HasSynced() &&
c.StatefulSetInformer.Informer().HasSynced() &&
c.StorageClassInformer.Informer().HasSynced() &&
c.VolumeAttachmentInformer.Informer().HasSynced() {
return
}
time.Sleep(time.Second)
counter++
if counter%10 == 0 {
log.Log(log.ShimClient).Info("Waiting for informers to sync",
zap.Duration("timeElapsed", time.Since(syncStartTime).Round(time.Second)))
}
}
}