71a9db89dae017cb9116b0af2d57a2964dbf9a94
[puppet_resolvconf.git] / manifests / init.pp
1 #
2 # resolvconf module
3 #
4 # Copyright 2008, admin(at)immerda.ch
5 # Copyright 2008, Puzzle ITC GmbH
6 # Marcel Härry haerry+puppet(at)puzzle.ch
7 # Simon Josi josi+puppet(at)puzzle.ch
8 #
9 # This program is free software; you can redistribute 
10 # it and/or modify it under the terms of the GNU 
11 # General Public License version 3 as published by 
12 # the Free Software Foundation.
13 #
14
15 # modules_dir { "resolvconf": }
16
17 class resolvconf {
18     case $reseolvconf_domain {
19         '': { fail("you need to define \$reseolvconf_domain for ${fqdn}") }
20     }
21     case $resolvconf_search {
22         '': { fail("you need to define \$reseolvconf_search for ${fqdn}") }
23     }
24     case $resolvconf_nameservers {
25         '': { fail("you need to define \$reseolvconf_nameservers for ${fqdn}") }
26     }
27
28     file { '/etc/resolv.conf':
29         path => '/etc/resolv.conf',
30         owner => root,
31         group => 0,
32         mode => 444,
33         content => $operatingsystem ? {
34             openbsd => template("resolvconf/resolvconf.${operatingsystem}.erb"),
35             default => template('resolvconf/resolvconf.erb'),
36         }
37     }
38 }