Project

General

Profile

« Previous | Next » 

Revision 7e9f8e11

Added by Ewoud Kohl van Wijngaarden almost 12 years ago

More CentOS compatibility

View differences:

manifests/init.pp
name => $dns_server_package,
}
File {
require => Package['dns'],
}
file {
$namedconf_path:
owner => root,
group => 0,
mode => '0644',
group => $dns::params::group,
mode => '0640',
require => Package['dns'],
content => template('dns/named.conf.erb');
$dnsdir:
ensure => directory,
owner => root,
group => 0,
mode => '0755';
$vardir:
ensure => directory,
owner => $dns::params::user,
group => $dns::params::user,
recurse => true,
mode => '0755';
$optionspath:
owner => root,
group => 0,
mode => '0644',
group => $dns::params::group,
mode => '0640',
content => template('dns/options.conf.erb');
"${vardir}/named.ca":
owner => $dns::params::user,
group => $dns::params::user,
mode => '0644',
source => 'puppet:///modules/dns/named.ca';
"${vardir}/named.local":
owner => $dns::params::user,
group => $dns::params::user,
mode => '0644',
source => 'puppet:///modules/dns/named.local';
"${vardir}/localhost.zone":
owner => $dns::params::user,
group => $dns::params::user,
mode => '0644',
source => 'puppet:///modules/dns/localhost.zone';
$zonefilepath:
ensure => directory,
owner => $dns::params::user,
group => $dns::params::user,
mode => '0755';
group => $dns::params::group,
mode => '0640';
"${vardir}/puppetstore":
ensure => directory,
group => $dns::params::group,
mode => '0640';
}
concat_build { 'dns_zones':
......
notify => Service[$namedservicename],
}
concat_fragment { "dns_zones+05_${zone}.dns":
content => template('dns/publicView.conf-header.erb'),
concat_fragment { 'dns_zones+01-header.dns':
content => ' ',
}
service {
......
require => Package['dns'];
}
file { "${vardir}/puppetstore": ensure => directory }
exec { 'create-rndc.key':
command => "/usr/sbin/rndc-confgen -r /dev/urandom -a -c ${rndckeypath}",
cwd => '/tmp',
manifests/zone.pp
$vardir = $dns::params::vardir
$namedservicename = $dns::params::namedservicename
concat_build { "zonefile_${zone}":
order => ['*.zone'],
target => "${vardir}/puppetstore/${filename}",
}
concat_fragment { "dns_zones+10_${zone}.dns":
content => template('dns/named.zone.erb'),
notify => Service[$namedservicename],
}
concat_fragment { "zonefile_${zone}+05_${zone}.zone":
file { "${vardir}/puppetstore/${filename}":
content => template('dns/zone.header.erb'),
notify => Service[$namedservicename],
require => File["${vardir}/puppetstore"],
}
exec { "create-zone_${zone}":
command => "/bin/cp puppetstore/${filename} zones/${filename}",
command => "/bin/cp puppetstore/${filename} ${zonefilename}",
cwd => $vardir,
creates => "${vardir}/zones/${filename}",
creates => $zonefilename,
require => File["${vardir}/puppetstore/${filename}",
$dns::params::zonefilepath],
notify => Service[$namedservicename],
}
templates/named.conf.erb
include "<%= rndckeypath %>";
controls {
inet 127.0.0.1 port 953 allow {127.0.0.1; }
keys { "rndc-key"; };
inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; };
};
options {
include "<%= optionspath %>";
include "<%= optionspath %>";
};
include "/etc/named.rfc1912.zones";
// Public view read by Server Admin
include "<%= publicviewpath %>";
templates/named.zone.erb
zone "<%= zone %>" {
type <%= zonetype %>;
file "<%= zonefilename %>";
update-policy {
grant rndc-key zonesub ANY;
};
zone "<%= zone %>" {
type <%= zonetype %>;
file "<%= zonefilename %>";
update-policy {
grant rndc-key zonesub ANY;
};
};
templates/publicView.conf-header.erb
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};

Also available in: Unified diff