X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fresolv%2Ftemplates%2Fresolv.conf.erb;h=0ebef6c5b81e678a826f09b9332339726219d12e;hb=259ecf970241269d8237cdc9f73f323f8fcf78fa;hp=99d8c0a64bc27e91b49c32e03eb87fea78110da8;hpb=456ead492354e307ef726c0b8fed4339fa931448;p=dsa-puppet.git diff --git a/modules/resolv/templates/resolv.conf.erb b/modules/resolv/templates/resolv.conf.erb index 99d8c0a6..0ebef6c5 100644 --- a/modules/resolv/templates/resolv.conf.erb +++ b/modules/resolv/templates/resolv.conf.erb @@ -8,25 +8,32 @@ nameservers = [] searchpaths = [] options = [] -if %w{draghi liszt widor spohr samosa}.include?(hostname) +if %w{draghi liszt widor spohr}.include?(hostname) nameservers << "127.0.0.1" end -nameservers += hosterinfo['nameservers'] if hosterinfo['nameservers'] -searchpaths += hosterinfo['searchpaths'] if hosterinfo['searchpaths'] -options += hosterinfo['resolvoptions'] if hosterinfo['resolvoptions'] +nameservers += nodeinfo['hoster']['nameservers'] if nodeinfo['hoster']['nameservers'] +searchpaths += nodeinfo['hoster']['searchpaths'] if nodeinfo['hoster']['searchpaths'] +options += nodeinfo['hoster']['resolvoptions'] if nodeinfo['hoster']['resolvoptions'] searchpaths << "debian.org" -if nameservers.empty? - raise Puppet::ParseError, "Something has gone wrong writing resolv.conf: probably included for wrong hoster" -end - resolvconf = '' resolvconf += "search " + searchpaths.join(" ") + "\n" -nameservers.each do |ns| - resolvconf += "nameserver " + ns + "\n" + +unbound = lookupvar('unbound') +if unbound and unbound == "true" + resolvconf += "nameserver 127.0.0.1\n" +else + if nameservers.empty? + raise Puppet::ParseError, "Something has gone wrong writing resolv.conf. No nameservers to use!" + end + + nameservers.each do |ns| + resolvconf += "nameserver " + ns + "\n" + end end + options.each do |opt| resolvconf += "options " + opt + "\n" end