Updating filepath in auto plugin if existing zone's file changes location (#1901) (#1910)

Exporting Zone.File to avoid getters and setters

Updating getter and setter for Zone.File to be less racy

Renaming GetFile to File in zone plugin
This commit is contained in:
Joey Espinosa
2018-07-03 06:20:39 -04:00
committed by Miek Gieben
parent 908d4fbd23
commit c2780f42c4
4 changed files with 68 additions and 5 deletions

View File

@@ -22,14 +22,15 @@ func (z *Zone) Reload() error {
select {
case <-tick.C:
reader, err := os.Open(z.file)
zFile := z.File()
reader, err := os.Open(zFile)
if err != nil {
log.Errorf("Failed to open zone %q in %q: %v", z.origin, z.file, err)
log.Errorf("Failed to open zone %q in %q: %v", z.origin, zFile, err)
continue
}
serial := z.SOASerialIfDefined()
zone, err := Parse(reader, z.origin, z.file, serial)
zone, err := Parse(reader, z.origin, zFile, serial)
if err != nil {
if _, ok := err.(*serialErr); !ok {
log.Errorf("Parsing zone %q: %v", z.origin, err)
@@ -43,7 +44,7 @@ func (z *Zone) Reload() error {
z.Tree = zone.Tree
z.reloadMu.Unlock()
log.Infof("Successfully reloaded zone %q in %q with serial %d", z.origin, z.file, z.Apex.SOA.Serial)
log.Infof("Successfully reloaded zone %q in %q with serial %d", z.origin, zFile, z.Apex.SOA.Serial)
z.Notify()
case <-z.reloadShutdown: