Merged in oherrala/puppet (pull request #21)

This commit is contained in:
Timo Mäkinen 2012-12-05 12:24:55 +02:00
commit 0dc654e4ca

View file

@ -271,7 +271,13 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
"default": { $view = "" }
default: { $view = regsubst(dirname($tmpname), '^(.*)', '\1/') }
}
$zone = basename($tmpname)
if $name =~ /\.in-addr\.arpa$/ {
$zonefile = basename($tmpname)
$zone = regsubst($zonefile, '-', '/')
} else {
$zonefile = basename($tmpname)
$zone = $zonefile
}
case $role {
"master": {
@ -337,7 +343,7 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
mode => "0750",
owner => "root",
group => $dns::server::group,
before => File["${dns::server::chroot}${dns::server::confdir}/${view}zone.${zone}"],
before => File["${dns::server::chroot}${dns::server::confdir}/${view}zone.${zonefile}"],
}
}
}
@ -353,14 +359,14 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
owner => "root",
group => $dns::server::group,
before => $role ? {
"master" => File["${dns::server::chroot}${zonedir}db.${zone}"],
"master" => File["${dns::server::chroot}${zonedir}db.${zonefile}"],
default => undef,
},
}
}
}
file { "${dns::server::chroot}${dns::server::confdir}/${view}zone.${zone}":
file { "${dns::server::chroot}${dns::server::confdir}/${view}zone.${zonefile}":
ensure => present,
content => template("dns/zone.$role.erb"),
mode => "0640",
@ -375,7 +381,7 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
if $role == "master" and $zone != "." {
if $source != "AUTO" {
file { "${dns::server::chroot}${zonedir}db.${zone}":
file { "${dns::server::chroot}${zonedir}db.${zonefile}":
ensure => present,
source => $source,
mode => "0640",
@ -388,7 +394,7 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
notify => Exec["generate-named-conf"],
}
} else {
file { "${dns::server::chroot}${zonedir}/db.${zone}":
file { "${dns::server::chroot}${zonedir}/db.${zonefile}":
ensure => present,
content => template("dns/db.erb"),
mode => "0640",
@ -401,7 +407,7 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
notify => Exec["named-checkconf"],
}
file { "${dns::server::chroot}${zonedir}/db.${zone}-dynamic":
file { "${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic":
ensure => present,
mode => "0640",
owner => "root",
@ -412,7 +418,7 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
},
notify => Exec["named-checkconf"],
}
file { "${dns::server::chroot}${zonedir}/db.${zone}-dynamic.d":
file { "${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic.d":
ensure => directory,
mode => "0640",
owner => "root",
@ -428,11 +434,11 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
notify => Service["named"],
}
file { "${dns::server::chroot}${zonedir}/db.${zone}-static":
file { "${dns::server::chroot}${zonedir}/db.${zonefile}-static":
ensure => present,
source => [
"puppet:///files/dns/db.${zone}-static.${homename}",
"puppet:///files/dns/db.${zone}-static",
"puppet:///files/dns/db.${zonefile}-static.${homename}",
"puppet:///files/dns/db.${zonefile}-static",
"puppet:///modules/dns/empty",
],
mode => "0640",
@ -445,9 +451,9 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
notify => Exec["named-checkconf"],
}
exec { "update-db.${zone}-dynamic":
exec { "update-db.${zonefile}-dynamic":
path => "/bin:/usr/bin:/sbin:/usr/sbin",
command => "/bin/sh -c 'find db.${zone}-dynamic.d -name rr.\\* | xargs cat > db.${zone}-dynamic'",
command => "/bin/sh -c 'find db.${zonefile}-dynamic.d -name rr.\\* | xargs cat > db.${zonefile}-dynamic'",
cwd => "${dns::server::chroot}${zonedir}",
user => "root",
refreshonly => true,
@ -455,16 +461,16 @@ define dns::zone($role = "master", $master = "", $slaves = [], $forwarders = [],
}
Dns::Node::Record <<| tag == $zone |>> {
dbdir => "${dns::server::chroot}${zonedir}/db.${zone}-dynamic.d",
notify => Exec["update-db.${zone}-dynamic"],
require => File["${dns::server::chroot}${zonedir}/db.${zone}-dynamic",
"${dns::server::chroot}${zonedir}/db.${zone}-dynamic.d"],
dbdir => "${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic.d",
notify => Exec["update-db.${zonefile}-dynamic"],
require => File["${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic",
"${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic.d"],
}
Dns::Node::Record::Reverse <<| tag == $zone |>> {
dbdir => "${dns::server::chroot}${zonedir}/db.${zone}-dynamic.d",
notify => Exec["update-db.${zone}-dynamic"],
require => File["${dns::server::chroot}${zonedir}/db.${zone}-dynamic",
"${dns::server::chroot}${zonedir}/db.${zone}-dynamic.d"],
dbdir => "${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic.d",
notify => Exec["update-db.${zonefile}-dynamic"],
require => File["${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic",
"${dns::server::chroot}${zonedir}/db.${zonefile}-dynamic.d"],
}
}
}