X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fresolv%2Ftemplates%2Fresolv.conf.erb;h=e3956756fc1b625728d465b8e1753289760cd7da;hb=0f2f72fcff88606d5bc2d5e2c338917503ed3746;hp=4f7cd63da7937e41a8ce778a34f8325a274aedc8;hpb=1793966c957b29380dd706130182e46f48122b5e;p=dsa-puppet.git diff --git a/modules/resolv/templates/resolv.conf.erb b/modules/resolv/templates/resolv.conf.erb index 4f7cd63d..e3956756 100644 --- a/modules/resolv/templates/resolv.conf.erb +++ b/modules/resolv/templates/resolv.conf.erb @@ -6,24 +6,38 @@ <%= nameservers = [] searchpaths = [] -resolvconf = '' +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'] +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" +resolvconf = '' +resolvconf += "search " + searchpaths.join(" ") + "\n" + +if defined?(unbound) and 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!" + 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.each do |ns| + resolvconf += "nameserver " + ns + "\n" + end end -resolvconf += "search " + searchpaths.join(" ") + "\n" -nameservers.each do |ns| - resolvconf += "nameserver " + ns + "\n" +options.each do |opt| + resolvconf += "options " + opt + "\n" end resolvconf