-# modules/resolvconf/manifests/init.pp - manage resolvconf stuff
-# Copyright (C) 2007 admin@immerda.ch
-# GPLv3
+#
+# resolvconf module
+#
+# Copyright 2008, admin(at)immerda.ch
+# Copyright 2008, Puzzle ITC GmbH
+# Marcel Härry haerry+puppet(at)puzzle.ch
+# Simon Josi josi+puppet(at)puzzle.ch
+#
+# This program is free software; you can redistribute
+# it and/or modify it under the terms of the GNU
+# General Public License version 3 as published by
+# the Free Software Foundation.
+#
# modules_dir { "resolvconf": }
class resolvconf {
- $real_resolvconf_domain = $resolvconf_domain ? {
- '' => 'glei.ch',
- default => $resolvconf_domain,
+ case $operatingsystem {
+ openbsd: { info("\$reseolvconf_domain and \$reseolvconf_search not needed on openbsd") }
+ default: {
+ case $reseolvconf_domain {
+ '': { fail("you need to define \$reseolvconf_domain for ${fqdn}") }
+ }
+ case $resolvconf_search {
+ '': { fail("you need to define \$reseolvconf_search for ${fqdn}") }
+ }
+ }
}
- $real_resolvconf_search = $resolvconf_search ? {
- '' => 'glei.ch',
- default => $resolvconf_search,
- }
- notice("resolvconf_nameservers: $resolvconf_nameservers")
- $real_resolvconf_nameservers = $resolvconf_nameservers ? {
- '' => '212.103.67.60:212.103.67.61',
- default => $resolvconf_nameservers,
+ case $resolvconf_nameservers {
+ '': { fail("you need to define \$reseolvconf_nameservers for ${fqdn}") }
}
file { '/etc/resolv.conf':
owner => root,
group => 0,
mode => 444,
- content => template("resolvconf/resolvconf.erb")
+ content => $operatingsystem ? {
+ openbsd => template("resolvconf/resolvconf.${operatingsystem}.erb"),
+ default => template('resolvconf/resolvconf.erb'),
+ }
}
-
-
}
-
-
-