diff options
Diffstat (limited to 'modules/bind/manifests')
| -rw-r--r-- | modules/bind/manifests/init.pp | 61 | ||||
| -rw-r--r-- | modules/bind/manifests/master.pp | 17 | ||||
| -rw-r--r-- | modules/bind/manifests/slave.pp | 6 | ||||
| -rw-r--r-- | modules/bind/manifests/zone.pp | 13 | ||||
| -rw-r--r-- | modules/bind/manifests/zone/master.pp | 6 | ||||
| -rw-r--r-- | modules/bind/manifests/zone/reverse.pp | 6 |
6 files changed, 63 insertions, 46 deletions
diff --git a/modules/bind/manifests/init.pp b/modules/bind/manifests/init.pp index 60ef7a04..a5d20c09 100644 --- a/modules/bind/manifests/init.pp +++ b/modules/bind/manifests/init.pp @@ -1,56 +1,25 @@ class bind { - class bind_base { - package { bind: - ensure => installed - } + package { 'bind': } - service { named: - ensure => running, - path => "/etc/init.d/named", - subscribe => [ Package["bind"]] - } - - file { '/etc/named.conf': - ensure => "/var/lib/named/etc/named.conf", - owner => root, - group => root, - mode => 644 - } + service { 'named': + restart => 'service named restart', + subscribe => Package['bind'], } - - file { '/var/lib/named/etc/named.conf': - ensure => present, - owner => root, - group => root, - mode => 644, - require => Package["bind"], - content => "", - notify => [Service['named']] + file { '/etc/named.conf': + ensure => link, + target => '/var/lib/named/etc/named.conf', + require => Package['bind'], } - define zone_master { - file { "/var/lib/named/var/named/master/$name.zone": - ensure => present, - owner => root, - group => root, - mode => 644, - content => template("bind/zones/$name.zone"), - require => Package[bind], - notify => Service[named] - } + exec { 'named_reload': + command => 'service named reload', + refreshonly => true, } - class bind_master inherits bind_base { - file { '/var/lib/named/etc/named.conf': - content => template("bind/named_base.conf", "bind/named_master.conf"), - } - } - - class bind_slave inherits bind_base { - file { '/var/lib/named/etc/named.conf': - content => template("bind/named_base.conf", "bind/named_slave.conf"), - } + file { '/var/lib/named/etc/named.conf': + require => Package['bind'], + content => '', + notify => Service['named'], } - } diff --git a/modules/bind/manifests/master.pp b/modules/bind/manifests/master.pp new file mode 100644 index 00000000..a82d4757 --- /dev/null +++ b/modules/bind/manifests/master.pp @@ -0,0 +1,17 @@ +class bind::master inherits bind { + Tld_redirections::Domain <<| |>> + + $managed_tlds = list_exported_ressources('Tld_redirections::Domain') + + file { "/var/lib/named/var/named/master": + ensure => directory + } + + file { "/var/lib/named/var/named/reverse": + ensure => directory + } + + File['/var/lib/named/etc/named.conf'] { + content => template('bind/named_base.conf', 'bind/named_master.conf'), + } +} diff --git a/modules/bind/manifests/slave.pp b/modules/bind/manifests/slave.pp new file mode 100644 index 00000000..e446b57a --- /dev/null +++ b/modules/bind/manifests/slave.pp @@ -0,0 +1,6 @@ +class bind::slave inherits bind { + $managed_tlds = list_exported_ressources('Tld_redirections::Domain') + File['/var/lib/named/etc/named.conf'] { + content => template('bind/named_base.conf', 'bind/named_slave.conf'), + } +} diff --git a/modules/bind/manifests/zone.pp b/modules/bind/manifests/zone.pp new file mode 100644 index 00000000..17f2075e --- /dev/null +++ b/modules/bind/manifests/zone.pp @@ -0,0 +1,13 @@ +define bind::zone($type, $content = false) { + if ! $content { + $zone_content = template("bind/zones/${name}.zone") + } else { + $zone_content = $content + } + + file { "/var/named/${type}/${name}.zone": + content => $zone_content, + require => Package['bind'], + notify => Exec['named_reload'] + } +} diff --git a/modules/bind/manifests/zone/master.pp b/modules/bind/manifests/zone/master.pp new file mode 100644 index 00000000..460f52c6 --- /dev/null +++ b/modules/bind/manifests/zone/master.pp @@ -0,0 +1,6 @@ +define bind::zone::master($content = false) { + bind::zone { $name : + type => 'master', + content => $content, + } +} diff --git a/modules/bind/manifests/zone/reverse.pp b/modules/bind/manifests/zone/reverse.pp new file mode 100644 index 00000000..400e77f9 --- /dev/null +++ b/modules/bind/manifests/zone/reverse.pp @@ -0,0 +1,6 @@ +define bind::zone::reverse($content = false) { + bind::zone { $name : + type => 'reverse', + content => $content, + } +} |
