diff --git a/manifests/configfile.pp b/manifests/configfile.pp index df3484dc..783c1d72 100644 --- a/manifests/configfile.pp +++ b/manifests/configfile.pp @@ -42,10 +42,10 @@ # @author https://github.com/elastic/puppet-logstash/graphs/contributors # define logstash::configfile( - $content = undef, - $source = undef, - $template = undef, - $path = undef, + Optional[String] $content = undef, + Optional[String] $source = undef, + Optional[String] $template = undef, + Optional[String] $path = undef, ) { include logstash @@ -60,8 +60,10 @@ elsif($content) { $config = $content } else { $config = undef } - if($path) { $config_file = $path } - else { $config_file = "${logstash::config_dir}/conf.d/${name}" } + $config_file = ? $path { + undef => "${logstash::config_dir}/conf.d/${name}", + default => $path + } if($config) { file { $config_file: diff --git a/manifests/init.pp b/manifests/init.pp index c63a6068..65488a0c 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -135,37 +135,29 @@ # @author https://github.com/elastic/puppet-logstash/graphs/contributors # class logstash( - $ensure = 'present', - $status = 'enabled', - Boolean $restart_on_change = true, - Boolean $auto_upgrade = false, - $version = undef, - $package_url = undef, - $package_name = 'logstash', - Integer $download_timeout = 600, - $logstash_user = 'logstash', - $logstash_group = 'logstash', - $config_dir = '/etc/logstash', - Boolean $purge_config = true, - $service_provider = undef, - $settings = {}, - $startup_options = {}, - $jvm_options = [], - Array $pipelines = [], - Boolean $manage_repo = true, + Enum['present', 'absent'] $ensure = 'present', + Enum['enabled', 'disabled', 'running', 'unmanaged'] $status = 'enabled', + Boolean $restart_on_change = true, + Boolean $auto_upgrade = false, + Optional[String] $version = undef, + Optional[String] $package_url = undef, + String $package_name = 'logstash', + Integer $download_timeout = 600, + String $logstash_user = 'logstash', + String $logstash_group = 'logstash', + String $config_dir = '/etc/logstash', + Boolean $purge_config = true, + Optional[String] $service_provider = undef, + Hash $settings = {}, + Hash $startup_options = {}, + Array $jvm_options = [], + Array $pipelines = [], + Boolean $manage_repo = true, ) { $home_dir = '/usr/share/logstash' - if ! ($ensure in [ 'present', 'absent' ]) { - fail("\"${ensure}\" is not a valid ensure parameter value") - } - - if ! ($status in [ 'enabled', 'disabled', 'running', 'unmanaged' ]) { - fail("\"${status}\" is not a valid status parameter value") - } - - if ($manage_repo == true) { + if $manage_repo { include elastic_stack::repo } include logstash::package diff --git a/manifests/service.pp b/manifests/service.pp index d3b15b6a..844311d8 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -31,19 +31,6 @@ 'SERVICE_DESCRIPTION' => '"logstash"', } - $default_jvm_options = [ - '-Dfile.encoding=UTF-8', - '-Djava.awt.headless=true', - '-Xms256m', - '-Xmx1g', - '-XX:CMSInitiatingOccupancyFraction=75', - '-XX:+DisableExplicitGC', - '-XX:+HeapDumpOnOutOfMemoryError', - '-XX:+UseCMSInitiatingOccupancyOnly', - '-XX:+UseConcMarkSweepGC', - '-XX:+UseParNewGC', - ] - $settings = merge($default_settings, $logstash::settings) $startup_options = merge($default_startup_options, $logstash::startup_options) $jvm_options = $logstash::jvm_options