server.pp 900 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. # A description of what this class does
  2. #
  3. # @summary A short summary of the purpose of this class
  4. #
  5. # @example
  6. # include openldap::server
  7. class openldap::server (
  8. String $owner,
  9. String $group,
  10. String $server_package,
  11. String $utils_package,
  12. Enum['olc', 'augeas'] $provider
  13. )
  14. {
  15. if $::osfamily == 'Debian' {
  16. $answerfile = '/var/cache/debconf/slapd.preseed'
  17. file { $answerfile:
  18. ensure => file,
  19. mode => '0644',
  20. owner => 'root',
  21. group => 'root',
  22. source => 'puppet:///modules/darkmorford-openldap/slapd.preseed',
  23. before => Package[$server_package]
  24. }
  25. } else {
  26. $answerfile = undef
  27. }
  28. if $provider == 'olc' {
  29. package { $utils_package:
  30. ensure => installed
  31. }
  32. }
  33. package { $server_package:
  34. ensure => installed,
  35. responsefile => $answerfile
  36. }
  37. }