+
+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"
+
+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
+
+options.each do |opt|
+ resolvconf += "options " + opt + "\n"