# defines a zone define profiles::dns::zone ( String $zone, Array[String] $nameservers, Stdlib::AbsolutePath $basedir, String $owner, String $group, ) { # Define the concat resource for the zone file concat { "${basedir}/${zone}.conf": ensure => present, owner => $owner, group => $group, mode => '0640', } # Add the header fragment (from the template) concat::fragment { "${basedir}/${zone}_header": target => "${basedir}/${zone}.conf", content => template('profiles/dns/zone_header.erb'), order => '01', } # Collect exported fragments for this zone Concat::Fragment <<| target == "${basedir}/${zone}.conf" |>> }