init.pp 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. # All in one class for setting up a PuppetDB instance. See README.md for more
  2. # details.
  3. class puppetdb (
  4. $listen_address = $puppetdb::params::listen_address,
  5. $listen_port = $puppetdb::params::listen_port,
  6. $open_listen_port = $puppetdb::params::open_listen_port,
  7. $ssl_listen_address = $puppetdb::params::ssl_listen_address,
  8. $ssl_listen_port = $puppetdb::params::ssl_listen_port,
  9. $disable_ssl = $puppetdb::params::disable_ssl,
  10. $open_ssl_listen_port = $puppetdb::params::open_ssl_listen_port,
  11. $ssl_dir = $puppetdb::params::ssl_dir,
  12. $ssl_set_cert_paths = $puppetdb::params::ssl_set_cert_paths,
  13. $ssl_cert_path = $puppetdb::params::ssl_cert_path,
  14. $ssl_key_path = $puppetdb::params::ssl_key_path,
  15. $ssl_ca_cert_path = $puppetdb::params::ssl_ca_cert_path,
  16. $ssl_deploy_certs = $puppetdb::params::ssl_deploy_certs,
  17. $ssl_key = $puppetdb::params::ssl_key,
  18. $ssl_cert = $puppetdb::params::ssl_cert,
  19. $ssl_ca_cert = $puppetdb::params::ssl_ca_cert,
  20. $ssl_protocols = $puppetdb::params::ssl_protocols,
  21. $manage_dbserver = $puppetdb::params::manage_dbserver,
  22. $manage_package_repo = $puppetdb::params::manage_pg_repo,
  23. $postgres_version = $puppetdb::params::postgres_version,
  24. $database = $puppetdb::params::database,
  25. $database_host = $puppetdb::params::database_host,
  26. $database_port = $puppetdb::params::database_port,
  27. $database_username = $puppetdb::params::database_username,
  28. $database_password = $puppetdb::params::database_password,
  29. $database_name = $puppetdb::params::database_name,
  30. $database_ssl = $puppetdb::params::database_ssl,
  31. $database_listen_address = $puppetdb::params::postgres_listen_addresses,
  32. $database_validate = $puppetdb::params::database_validate,
  33. $database_embedded_path = $puppetdb::params::database_embedded_path,
  34. $node_ttl = $puppetdb::params::node_ttl,
  35. $node_purge_ttl = $puppetdb::params::node_purge_ttl,
  36. $report_ttl = $puppetdb::params::report_ttl,
  37. $gc_interval = $puppetdb::params::gc_interval,
  38. $log_slow_statements = $puppetdb::params::log_slow_statements,
  39. $conn_max_age = $puppetdb::params::conn_max_age,
  40. $conn_keep_alive = $puppetdb::params::conn_keep_alive,
  41. $conn_lifetime = $puppetdb::params::conn_lifetime,
  42. $puppetdb_package = $puppetdb::params::puppetdb_package,
  43. $puppetdb_version = $puppetdb::params::puppetdb_version,
  44. $puppetdb_service = $puppetdb::params::puppetdb_service,
  45. $puppetdb_service_status = $puppetdb::params::puppetdb_service_status,
  46. $puppetdb_user = $puppetdb::params::puppetdb_user,
  47. $puppetdb_group = $puppetdb::params::puppetdb_group,
  48. $read_database = $puppetdb::params::read_database,
  49. $read_database_host = $puppetdb::params::read_database_host,
  50. $read_database_port = $puppetdb::params::read_database_port,
  51. $read_database_username = $puppetdb::params::read_database_username,
  52. $read_database_password = $puppetdb::params::read_database_password,
  53. $read_database_name = $puppetdb::params::read_database_name,
  54. $read_database_ssl = $puppetdb::params::read_database_ssl,
  55. $read_database_validate = $puppetdb::params::read_database_validate,
  56. $read_log_slow_statements = $puppetdb::params::read_log_slow_statements,
  57. $read_conn_max_age = $puppetdb::params::read_conn_max_age,
  58. $read_conn_keep_alive = $puppetdb::params::read_conn_keep_alive,
  59. $read_conn_lifetime = $puppetdb::params::read_conn_lifetime,
  60. $confdir = $puppetdb::params::confdir,
  61. $manage_firewall = $puppetdb::params::manage_firewall,
  62. $java_args = $puppetdb::params::java_args,
  63. $max_threads = $puppetdb::params::max_threads,
  64. $command_threads = $puppetdb::params::command_threads,
  65. $store_usage = $puppetdb::params::store_usage,
  66. $temp_usage = $puppetdb::params::temp_usage
  67. ) inherits puppetdb::params {
  68. class { '::puppetdb::server':
  69. listen_address => $listen_address,
  70. listen_port => $listen_port,
  71. open_listen_port => $open_listen_port,
  72. ssl_listen_address => $ssl_listen_address,
  73. ssl_listen_port => $ssl_listen_port,
  74. disable_ssl => $disable_ssl,
  75. open_ssl_listen_port => $open_ssl_listen_port,
  76. ssl_dir => $ssl_dir,
  77. ssl_set_cert_paths => $ssl_set_cert_paths,
  78. ssl_cert_path => $ssl_cert_path,
  79. ssl_key_path => $ssl_key_path,
  80. ssl_ca_cert_path => $ssl_ca_cert_path,
  81. ssl_deploy_certs => $ssl_deploy_certs,
  82. ssl_key => $ssl_key,
  83. ssl_cert => $ssl_cert,
  84. ssl_ca_cert => $ssl_ca_cert,
  85. ssl_protocols => $ssl_protocols,
  86. database => $database,
  87. database_host => $database_host,
  88. database_port => $database_port,
  89. database_username => $database_username,
  90. database_password => $database_password,
  91. database_name => $database_name,
  92. database_ssl => $database_ssl,
  93. database_validate => $database_validate,
  94. database_embedded_path => $database_embedded_path,
  95. node_ttl => $node_ttl,
  96. node_purge_ttl => $node_purge_ttl,
  97. report_ttl => $report_ttl,
  98. gc_interval => $gc_interval,
  99. log_slow_statements => $log_slow_statements,
  100. conn_max_age => $conn_max_age,
  101. conn_keep_alive => $conn_keep_alive,
  102. conn_lifetime => $conn_lifetime,
  103. puppetdb_package => $puppetdb_package,
  104. puppetdb_version => $puppetdb_version,
  105. puppetdb_service => $puppetdb_service,
  106. puppetdb_service_status => $puppetdb_service_status,
  107. confdir => $confdir,
  108. java_args => $java_args,
  109. max_threads => $max_threads,
  110. read_database => $read_database,
  111. read_database_host => $read_database_host,
  112. read_database_port => $read_database_port,
  113. read_database_username => $read_database_username,
  114. read_database_password => $read_database_password,
  115. read_database_name => $read_database_name,
  116. read_database_ssl => $read_database_ssl,
  117. read_database_validate => $read_database_validate,
  118. read_log_slow_statements => $read_log_slow_statements,
  119. read_conn_max_age => $read_conn_max_age,
  120. read_conn_keep_alive => $read_conn_keep_alive,
  121. read_conn_lifetime => $read_conn_lifetime,
  122. puppetdb_user => $puppetdb_user,
  123. puppetdb_group => $puppetdb_group,
  124. manage_firewall => $manage_firewall,
  125. command_threads => $command_threads,
  126. store_usage => $store_usage,
  127. temp_usage => $temp_usage,
  128. }
  129. if ($database == 'postgres') {
  130. $database_before = str2bool($database_validate) ? {
  131. false => Class['::puppetdb::server'],
  132. default => [Class['::puppetdb::server'], Class['::puppetdb::server::validate_db']],
  133. }
  134. class { '::puppetdb::database::postgresql':
  135. listen_addresses => $database_listen_address,
  136. database_name => $database_name,
  137. database_username => $database_username,
  138. database_password => $database_password,
  139. manage_server => $manage_dbserver,
  140. manage_package_repo => $manage_package_repo,
  141. postgres_version => $postgres_version,
  142. before => $database_before
  143. }
  144. }
  145. }