X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fresolv%2Ftemplates%2Fresolv.conf.erb;h=147dfdf08205da7a04c58f14537e9a4f324ad4a0;hb=17bbd45fbed32e6cfe598b6586e0cc1f8e58b2b9;hp=4e9f7650c588e0c184acbea08ad07c1cc2258f2d;hpb=2e8e944225660df69ce7767e9374995c35c4d748;p=mirror%2Fdsa-puppet.git diff --git a/modules/resolv/templates/resolv.conf.erb b/modules/resolv/templates/resolv.conf.erb index 4e9f7650c..147dfdf08 100644 --- a/modules/resolv/templates/resolv.conf.erb +++ b/modules/resolv/templates/resolv.conf.erb @@ -8,27 +8,30 @@ nameservers = [] searchpaths = [] options = [] -if %w{draghi liszt widor spohr samosa}.include?(hostname) +if %w{draghi liszt}.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 += scope.lookupvar('ns') +options += scope.lookupvar('site::nodeinfo')['hoster']['resolvoptions'] if scope.lookupvar('site::nodeinfo')['hoster']['resolvoptions'] +searchpaths += scope.lookupvar('sp') 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" +resolvconf += "search " + searchpaths.to_a.flatten.join(" ") + "\n" -if runs_local_resolver +if has_variable?('unbound') and unbound and unbound == "true" resolvconf += "nameserver 127.0.0.1\n" else - nameservers.each do |ns| + if nameservers.empty? + #raise Puppet::ParseError, "Something has gone wrong writing resolv.conf. No nameservers to use!" + scope.function_warning(["Something has gone wrong writing resolv.conf. No nameservers to use - using google's!"]) + nameservers << '8.8.8.8' + nameservers << '8.8.4.4' + end + + nameservers.to_a.flatten.each do |ns| resolvconf += "nameserver " + ns + "\n" end end