|
201 | 201 | # |
202 | 202 | # $puppetserver_dir:: The path of the puppetserver config dir |
203 | 203 | # |
204 | | -# $puppetserver_version:: The version of puppetserver 2 installed (or being installed) |
205 | | -# Unfortunately, different versions of puppetserver need configuring differently, |
206 | | -# and there's no easy way of determining which version is being installed. |
207 | | -# Defaults to '2.3.1' but can be overriden if you're installing an older version. |
| 204 | +# $puppetserver_version:: The version of puppetserver installed (or being installed) |
| 205 | +# Unfortunately, different versions of puppetserver need configuring differently. |
| 206 | +# By default we attempt to derive the version from the puppet version itself but |
| 207 | +# can be overriden if you're installing an older version. |
208 | 208 | # |
209 | 209 | # $max_active_instances:: Max number of active jruby instances. Defaults to |
210 | 210 | # processor count |
|
356 | 356 | Optional[Stdlib::Absolutepath] $puppetserver_rundir = $::puppet::server_puppetserver_rundir, |
357 | 357 | Optional[Stdlib::Absolutepath] $puppetserver_logdir = $::puppet::server_puppetserver_logdir, |
358 | 358 | Stdlib::Absolutepath $puppetserver_dir = $::puppet::server_puppetserver_dir, |
359 | | - Pattern[/^[\d]\.[\d]+\.[\d]+$/] $puppetserver_version = $::puppet::server_puppetserver_version, |
| 359 | + Optional[Pattern[/^[\d]\.[\d]+\.[\d]+$/]] $puppetserver_version = $::puppet::server_puppetserver_version, |
360 | 360 | Variant[Undef, String[0], Stdlib::Absolutepath] $external_nodes = $::puppet::server_external_nodes, |
361 | 361 | Array[String] $cipher_suites = $::puppet::server_cipher_suites, |
362 | 362 | Optional[String] $config_version = $::puppet::server_config_version, |
|
411 | 411 | String $jvm_config = $::puppet::server_jvm_config, |
412 | 412 | Pattern[/^[0-9]+[kKmMgG]$/] $jvm_min_heap_size = $::puppet::server_jvm_min_heap_size, |
413 | 413 | Pattern[/^[0-9]+[kKmMgG]$/] $jvm_max_heap_size = $::puppet::server_jvm_max_heap_size, |
414 | | - Variant[String,Array[String]] $jvm_extra_args = $::puppet::server_jvm_extra_args, |
| 414 | + Optional[Variant[String,Array[String]]] $jvm_extra_args = $::puppet::server_jvm_extra_args, |
415 | 415 | Optional[String] $jvm_cli_args = $::puppet::server_jvm_cli_args, |
416 | 416 | Optional[Stdlib::Absolutepath] $jruby_gem_home = $::puppet::server_jruby_gem_home, |
417 | 417 | Integer[1] $max_active_instances = $::puppet::server_max_active_instances, |
|
423 | 423 | Boolean $environment_class_cache_enabled = $::puppet::server_environment_class_cache_enabled, |
424 | 424 | Boolean $allow_header_cert_info = $::puppet::server_allow_header_cert_info, |
425 | 425 | Boolean $puppetserver_jruby9k = $::puppet::server_puppetserver_jruby9k, |
426 | | - Boolean $puppetserver_metrics = $::puppet::server_puppetserver_metrics, |
| 426 | + Optional[Boolean] $puppetserver_metrics = $::puppet::server_puppetserver_metrics, |
427 | 427 | Boolean $metrics_jmx_enable = $::puppet::server_metrics_jmx_enable, |
428 | 428 | Boolean $metrics_graphite_enable = $::puppet::server_metrics_graphite_enable, |
429 | 429 | String $metrics_graphite_host = $::puppet::server_metrics_graphite_host, |
|
468 | 468 | $config_version_cmd = $config_version |
469 | 469 | } |
470 | 470 |
|
| 471 | + # For Puppetserver, certain configuration parameters are version specific. We |
| 472 | + # assume a particular version here. |
| 473 | + if $puppetserver_version { |
| 474 | + $real_puppetserver_version = $puppetserver_version |
| 475 | + } elsif versioncmp($::puppetversion, '6.0.0') >= 0 { |
| 476 | + $real_puppetserver_version = '6.0.0' |
| 477 | + } elsif versioncmp($::puppetversion, '5.5.7') >= 0 { |
| 478 | + $real_puppetserver_version = '5.3.6' |
| 479 | + } elsif versioncmp($::puppetversion, '5.5.0') >= 0 { |
| 480 | + $real_puppetserver_version = '5.3.0' |
| 481 | + } elsif versioncmp($::puppetversion, '5.1.0') >= 0 { |
| 482 | + $real_puppetserver_version = '5.1.0' |
| 483 | + } elsif versioncmp($::puppetversion, '5.0.0') >= 0 { |
| 484 | + $real_puppetserver_version = '5.0.0' |
| 485 | + } else { |
| 486 | + $real_puppetserver_version = '2.7.0' |
| 487 | + } |
| 488 | + |
| 489 | + # Prefer the user setting,otherwise disable for Puppetserver 2.x, enabled for 5.x |
| 490 | + $real_puppetserver_metrics = pick($puppetserver_metrics, versioncmp($real_puppetserver_version, '5.0.0') >= 0) |
| 491 | + |
| 492 | + if $jvm_extra_args { |
| 493 | + $real_jvm_extra_args = $jvm_extra_args |
| 494 | + } elsif versioncmp($real_puppetserver_version, '5.0.0') < 0 { |
| 495 | + $real_jvm_extra_args = '-XX:MaxPermSize=256m' |
| 496 | + } else { |
| 497 | + $real_jvm_extra_args = '-Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger' |
| 498 | + } |
| 499 | + |
471 | 500 | contain puppet::server::install |
472 | 501 | contain puppet::server::config |
473 | 502 | contain puppet::server::service |
|
0 commit comments