### USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
###
-<%= resolvconf = case hoster
- when "ubcece" then "search debprivate-ubc.debian.org debian.org
-nameserver 206.12.19.5
-nameserver 137.82.1.1
-nameserver 142.103.1.1
-"
+<%=
+nameservers = []
+searchpaths = []
+options = []
+
+if %w{draghi liszt widor spohr samosa}.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']
+
+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"
end
-if resolvconf == ""
- raise Puppet::ParseError, "resolv.conf is empty"
+opions.each do |opt|
+ resolvconf += "options " + opt + "\n"
end
+
resolvconf
%>