From 303a043d6930b317013207b55be25fbeadef8f7d Mon Sep 17 00:00:00 2001 From: Andreas Unterkircher Date: Thu, 20 Feb 2020 21:16:18 +0100 Subject: [PATCH] also allow parameterizing prometheus's own name --- data/defaults.yaml | 1 + manifests/config.pp | 4 ++-- manifests/init.pp | 3 +++ manifests/run_service.pp | 2 +- manifests/server.pp | 3 ++- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/data/defaults.yaml b/data/defaults.yaml index 620a3623e..fcecb613e 100644 --- a/data/defaults.yaml +++ b/data/defaults.yaml @@ -7,6 +7,7 @@ prometheus::version: '2.14.0' prometheus::install_method: 'url' prometheus::manage_prometheus_server: false prometheus::extract_command: ~ +prometheus::service_name: 'prometheus' prometheus::pushprox_client::download_extension: 'tar.gz' prometheus::pushprox_client::download_url_base: 'https://github.com/camptocamp/PushProx/releases' prometheus::pushprox_client::extra_groups: [] diff --git a/manifests/config.pp b/manifests/config.pp index 6b054f275..3bb32ba56 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -200,7 +200,7 @@ 'redhat' => template('prometheus/prometheus.sysv.erb'), # redhat and sysv share the same template file default => template("prometheus/prometheus.${prometheus::server::init_style}.erb"), } - file { '/etc/init.d/prometheus': + file { "/etc/init.d/${prometheus::server::service_name}": ensure => file, mode => '0555', owner => 'root', @@ -252,7 +252,7 @@ file_sd_configs => [{ files => [ "${prometheus::config_dir}/file_sd_config.d/${job_name}_*.yaml" ] }] - }) + }) } if versioncmp($prometheus::server::version, '2.0.0') >= 0 { diff --git a/manifests/init.pp b/manifests/init.pp index f06afe6b3..d9dad51a4 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -51,6 +51,8 @@ # Whether to enable or not prometheus service from puppet (default true) # @param service_ensure # State ensured from prometheus service (default 'running') +# @param service_name +# Name of the prometheus service (default 'prometheus') # @param manage_service # Should puppet manage the prometheus service? (default true) # @param restart_on_change @@ -219,6 +221,7 @@ String $download_extension, String $package_name, String $package_ensure, + String $service_name, String $config_dir, Stdlib::Absolutepath $localstorage, String $config_template, diff --git a/manifests/run_service.pp b/manifests/run_service.pp index cd902bd28..858724709 100644 --- a/manifests/run_service.pp +++ b/manifests/run_service.pp @@ -3,7 +3,7 @@ $init_selector = $prometheus::server::init_style ? { 'launchd' => 'io.prometheus.daemon', - default => 'prometheus', + default => $prometheus::server::service_name, } if $prometheus::server::manage_service == true { diff --git a/manifests/server.pp b/manifests/server.pp index 28ed4e9ce..5f3df7c42 100644 --- a/manifests/server.pp +++ b/manifests/server.pp @@ -29,6 +29,7 @@ Hash $extra_alerts = $prometheus::extra_alerts, Boolean $service_enable = $prometheus::service_enable, Stdlib::Ensure::Service $service_ensure = $prometheus::service_ensure, + String[1] $service_name = $prometheus::service_name, Boolean $manage_service = $prometheus::manage_service, Boolean $restart_on_change = $prometheus::restart_on_change, Prometheus::Initstyle $init_style = $facts['service_provider'], @@ -56,7 +57,7 @@ "${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") } $notify_service = $restart_on_change ? { - true => Service['prometheus'], + true => Service[$service_name], default => undef, }