server.pp 918 B

123456789101112131415161718192021222324252627282930313233343536
  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 $server_service,
  12. Enum['olc', 'augeas'] $provider,
  13. Array[String] $ldap_ifs,
  14. Array[String] $ldaps_ifs,
  15. Array[String] $ldapi_ifs,
  16. )
  17. {
  18. class { 'openldap::server::install': }
  19. -> class { 'openldap::server::config': }
  20. ~> class { 'openldap::server::service': }
  21. case $provider {
  22. 'augeas': {
  23. Class['openldap::server::install']
  24. ~> Class['openldap::server::service']
  25. -> Class['openldap::server']
  26. }
  27. 'olc': {
  28. Class['openldap::server::service']
  29. -> Class['openldap::server']
  30. }
  31. default: {
  32. fail "Invalid config provider ${provider}"
  33. }
  34. }
  35. }