Changed slave zone handling from dns module.
This commit is contained in:
parent
4cb660dcaf
commit
9ab2bf1bfd
2 changed files with 12 additions and 8 deletions
|
@ -183,13 +183,16 @@ class dns::server {
|
||||||
# $role:
|
# $role:
|
||||||
# The role {master, slave} of this host.
|
# The role {master, slave} of this host.
|
||||||
# $master:
|
# $master:
|
||||||
# IP address and FQDN or hostname of the DNS master for this zone.
|
# IP address of DNS master for this zone if role is slave.
|
||||||
|
# IP address and FQDN of DNS master for this zone if running as
|
||||||
|
# master and using autogenerated zone.
|
||||||
# $slaves:
|
# $slaves:
|
||||||
# IP addresess and host names of the DNS slaves for this zone.
|
# IP addresess and host names of the DNS slaves for this zone.
|
||||||
|
# Required only when using autogenrated zones.
|
||||||
# $source:
|
# $source:
|
||||||
# Source file to use for zone. Defaults to auto.
|
# Source file to use for zone. Defaults to auto.
|
||||||
#
|
#
|
||||||
define dns::zone($role = "master", $master = [], $slaves = [], $source = "AUTO") {
|
define dns::zone($role = "master", $master = "", $slaves = [], $source = "AUTO") {
|
||||||
|
|
||||||
$zone = $name
|
$zone = $name
|
||||||
case $role {
|
case $role {
|
||||||
|
@ -207,6 +210,9 @@ define dns::zone($role = "master", $master = [], $slaves = [], $source = "AUTO")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
"slave": {
|
"slave": {
|
||||||
|
if $master == "" {
|
||||||
|
fail("No master defined for dns::zone '${name}'")
|
||||||
|
}
|
||||||
case $operatingsystem {
|
case $operatingsystem {
|
||||||
"openbsd": {
|
"openbsd": {
|
||||||
$zonedir = "/slave"
|
$zonedir = "/slave"
|
||||||
|
|
|
@ -2,11 +2,9 @@ zone "<%= zone %>" {
|
||||||
type slave;
|
type slave;
|
||||||
<% if zone.match(/\//) %>
|
<% if zone.match(/\//) %>
|
||||||
file "<%= zonedir %>/db.<%= zone.sub(/\//, '-') %>";
|
file "<%= zonedir %>/db.<%= zone.sub(/\//, '-') %>";
|
||||||
<% else %>
|
<% else -%>
|
||||||
file "<%= zonedir %>/db.<%= zone %>";
|
file "<%= zonedir %>/db.<%= zone %>";
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% master.each_pair do |k, v| -%>
|
masters { <%= master %>; };
|
||||||
masters { <%= v['ip'] %>; };
|
|
||||||
<% end -%>
|
|
||||||
allow-transfer { none; };
|
allow-transfer { none; };
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue