authoritative.pp 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. # Module:: public
  2. # Manifest:: dns/authoritative.pp
  3. #
  4. # Author:: Julien Vaubourg (<julien@vaubourg.com>)
  5. # Date:: 2013-09-21 13:36:02 +0200
  6. # Maintainer:: Julien Vaubourg (<julien@vaubourg.com>)
  7. # Sebastien Badia (<seb@sebian.fr>)
  8. #
  9. # Class:: public::dns::authoritative inherits dns
  10. #
  11. #
  12. class public::dns::authoritative inherits dns {
  13. package { 'zonecheck':
  14. ensure => installed,
  15. }
  16. # Configurations
  17. bind::server::file { [
  18. 'named.conf',
  19. # from named.conf
  20. 'acl.conf',
  21. 'named.conf.local',
  22. 'named.conf.options',
  23. 'divers.conf',
  24. 'adherents.conf',
  25. ]:
  26. zonedir => '/etc/bind',
  27. owner => 'bind',
  28. group => 'bind',
  29. source_base => 'puppet:///modules/public/authoritative/confs/',
  30. # require => File['/etc/all-knowing-dns.conf'],
  31. }
  32. file {
  33. '/etc/bind/zones':
  34. ensure => directory,
  35. owner => 'bind',
  36. group => 'bind',
  37. }
  38. $zones = hiera_hash('zones', {})
  39. create_resources(public::dns::zone, $zones)
  40. } # Class:: public::dns::authoritative inherits dns