X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fresolv%2Ftemplates%2Fresolv.conf.erb;h=0ebef6c5b81e678a826f09b9332339726219d12e;hb=259ecf970241269d8237cdc9f73f323f8fcf78fa;hp=1bf9dda18473cf0e5154a3eec3a6894727bbd72f;hpb=e21fd3cc14be0e49db65d6c6040e7ce658ff9ca6;p=dsa-puppet.git diff --git a/modules/resolv/templates/resolv.conf.erb b/modules/resolv/templates/resolv.conf.erb index 1bf9dda1..0ebef6c5 100644 --- a/modules/resolv/templates/resolv.conf.erb +++ b/modules/resolv/templates/resolv.conf.erb @@ -6,30 +6,36 @@ <%= nameservers = [] searchpaths = [] -resolvconf = '' +options = [] -case hoster - when "ubcece" then - searchpaths << "debprivate-ubc.debian.org" - nameservers += ["206.12.19.5", "137.82.1.1", "142.103.1.1" ] - when "darmstadt" then - case hostname - when "draghi", "liszt" then - nameservers << "127.0.0.1" - end - nameservers += ["82.195.75.81", "82.195.66.239", "217.198.242.225"] - searchpaths << "debprivate-darmstadt.debian.org" +if %w{draghi liszt widor spohr}.include?(hostname) + nameservers << "127.0.0.1" end +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" + +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 -resolvconf += "search " + searchpaths.sort.join(" ") + "\n" -nameservers.each do |ns| - resolvconf += "nameserver " + ns + "\n" +options.each do |opt| + resolvconf += "options " + opt + "\n" end resolvconf