in lib/filesourcer.go [137:161]
func (fs *FileSourcer) watchFsnotifyEvents() {
for {
select {
case ev := <-fs.watcher.Events:
if ev.Op&fsnotify.Write != 0 {
glog.Infof("Event: %s File changed, reloading host list", ev)
fs.lock.Lock()
var err error
fs.stableServers, err = fs.GetServersFromTier(fs.stablePath)
if err != nil {
glog.Errorf("Failed to load stable servers: %s", err)
}
if len(fs.rcPath) > 0 {
fs.rcServers, err = fs.GetServersFromTier(fs.rcPath)
if err != nil {
glog.Errorf("Failed to RC stable servers: %s", err)
}
}
fs.lock.Unlock()
}
case err := <-fs.watcher.Errors:
glog.Error("Error: ", err)
}
}
}