diff options
Diffstat (limited to 'manifests/classes')
-rw-r--r-- | manifests/classes/bind-base.pp | 9 | ||||
-rw-r--r-- | manifests/classes/bind-debian.pp | 8 | ||||
-rw-r--r-- | manifests/classes/bind.pp | 59 |
3 files changed, 76 insertions, 0 deletions
diff --git a/manifests/classes/bind-base.pp b/manifests/classes/bind-base.pp index b31189e..eb8942e 100644 --- a/manifests/classes/bind-base.pp +++ b/manifests/classes/bind-base.pp @@ -1,3 +1,12 @@ +/* + += Class: bind::base + +Declares some basic resources. +You should NOT include this class as is, as it won't work at all! +Please refer to Class["bind"]. + +/* class bind::base { package {"bind9": ensure => present, diff --git a/manifests/classes/bind-debian.pp b/manifests/classes/bind-debian.pp index f998a80..ad4e477 100644 --- a/manifests/classes/bind-debian.pp +++ b/manifests/classes/bind-debian.pp @@ -1,3 +1,11 @@ +/* + += Class: bind::debian +Special debian class - inherits from bind::base + +You should not include this class - please refer to Class["bind"] + +*/ class bind::debian inherits bind::base { Service["bind9"] { pattern => "/usr/sbin/named", diff --git a/manifests/classes/bind.pp b/manifests/classes/bind.pp index dcede05..67bb0e0 100644 --- a/manifests/classes/bind.pp +++ b/manifests/classes/bind.pp @@ -1,3 +1,62 @@ +/* + += Class: bind +Include this class to install bind9 server on your node. + +Requires: +- module common (git://github.com/camptocamp/puppet-common.git) + +Example: + +node "ns1.domain.ltd" { + include bind + += Class: bind +Include this class to install bind9 server on your node. + +Requires: +- module common (git://github.com/camptocamp/puppet-common.git) + +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": { include bind::debian } |