coredns reload -> dnsServer.Reconfigure()

This commit is contained in:
Eugene Bujak
2018-11-28 18:57:20 +03:00
parent 9d87ae95e6
commit 9c4b791621
2 changed files with 26 additions and 13 deletions

View File

@@ -15,11 +15,7 @@ func isRunning() bool {
return dnsServer.IsRunning()
}
func startDNSServer() error {
if isRunning() {
return fmt.Errorf("Unable to start coreDNS: Already running")
}
func generateServerConfig() dnsforward.ServerConfig {
filters := []dnsforward.Filter{}
for _, filter := range config.Filters {
filters = append(filters, dnsforward.Filter{
@@ -43,7 +39,15 @@ func startDNSServer() error {
}
newconfig.Upstreams = append(newconfig.Upstreams, upstream)
}
return newconfig
}
func startDNSServer() error {
if isRunning() {
return fmt.Errorf("Unable to start forwarding DNS server: Already running")
}
newconfig := generateServerConfig()
err := dnsServer.Start(&newconfig)
if err != nil {
return errorx.Decorate(err, "Couldn't start forwarding DNS server")
@@ -51,3 +55,16 @@ func startDNSServer() error {
return nil
}
func reconfigureDNSServer() error {
if !isRunning() {
return fmt.Errorf("Refusing to reconfigure forwarding DNS server: not running")
}
err := dnsServer.Reconfigure(generateServerConfig())
if err != nil {
return errorx.Decorate(err, "Couldn't start forwarding DNS server")
}
return nil
}