summaryrefslogtreecommitdiff
path: root/manifests/init.pp
blob: ff8873793b0ba40c2919044707caa81a8f6ec9f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# = Class: bind
# Include this class to install bind9 server on your node.
#
# Bind documentation:
# http://www.bind9.net/manuals
#
# Limitations:
# This modules is valid for Bind 9.7.1 (squeeze version).
# For 9.7.2, it will be really limited (no view nor ACL support).
#
#
# Example:
#
# node 'ns1.domain.ltd' {
#
#   include bind
#
#   bind::zone {'domain.ltd':
#     ensure       => present,
#     zone_contact => "contact.domain.ltd",
#     zone_ns      => $fqdn,
#     zone_serial  => '2010110804',
#     zone_ttl     => '604800',
#   }
#
#   bind::a {"ns $fqdn":
#     zone  => 'domain.ltd',
#     owner => "${fqdn}.",
#     host  => $ipaddress,
#   }
#
#   bind::a {'mail.domain.ltd':
#     zone  => 'domain.ltd',
#     owner => 'mail',
#     host  => '6.6.6.6',
#   }
#
#   bind::mx {'mx1':
#     zone     => 'domain.ltd',
#     owner    => '@',
#     priority => 1,
#     host     => 'mail.domain.ltd',
#   }
# }
#
class bind {

  case $::operatingsystem {
    'Debian','Ubuntu': { include bind::debian }
    default          : { fail "Unknown ${::operatingsystem}" }
  }

}