diff --git a/data/defaults.yaml b/data/defaults.yaml index 72015e46c..620a3623e 100644 --- a/data/defaults.yaml +++ b/data/defaults.yaml @@ -76,6 +76,7 @@ prometheus::consul_exporter::group: 'consul-exporter' prometheus::consul_exporter::log_level: 'info' prometheus::consul_exporter::package_ensure: 'latest' prometheus::consul_exporter::package_name: 'consul_exporter' +prometheus::consul_exporter::service_name: 'consul_exporter' prometheus::consul_exporter::user: 'consul-exporter' prometheus::consul_exporter::version: '0.5.0' prometheus::consul_exporter::web_listen_address: ':9107' @@ -90,6 +91,7 @@ prometheus::elasticsearch_exporter::extra_groups: [] prometheus::elasticsearch_exporter::group: 'elasticsearch-exporter' prometheus::elasticsearch_exporter::package_ensure: 'latest' prometheus::elasticsearch_exporter::package_name: 'elasticsearch_exporter' +prometheus::elasticsearch_exporter::service_name: 'elasticsearch_exporter' prometheus::elasticsearch_exporter::user: 'elasticsearch-exporter' prometheus::elasticsearch_exporter::version: '1.1.0rc1' prometheus::elasticsearch_exporter::use_kingpin: true @@ -111,6 +113,7 @@ prometheus::mesos_exporter::group: 'mesos-exporter' prometheus::mesos_exporter::user: 'mesos-exporter' prometheus::mesos_exporter::package_ensure: 'latest' prometheus::mesos_exporter::package_name: 'mesos_exporter' +prometheus::mesos_exporter::service_name: 'mesos_exporter' prometheus::mesos_exporter::version: '1.1.2' prometheus::haproxy_exporter::cnf_scrape_uri: 'http://localhost:1234/haproxy?stats;csv' prometheus::haproxy_exporter::download_extension: 'tar.gz' @@ -129,6 +132,7 @@ prometheus::nginx_vts_exporter::extra_groups: [] prometheus::nginx_vts_exporter::group: 'nginx-vts-exporter' prometheus::nginx_vts_exporter::package_ensure: 'latest' prometheus::nginx_vts_exporter::package_name: 'nginx-vts-exporter' +prometheus::nginx_vts_exporter::service_name: 'nginx-vts-exporter' prometheus::nginx_vts_exporter::user: 'nginx-vts-exporter' prometheus::nginx_vts_exporter::version: '0.10.3' prometheus::process_exporter::download_extension: 'tar.gz' @@ -137,6 +141,7 @@ prometheus::process_exporter::extra_groups: [] prometheus::process_exporter::group: 'process-exporter' prometheus::process_exporter::package_ensure: 'latest' prometheus::process_exporter::package_name: 'process-exporter' +prometheus::process_exporter::service_name: 'process-exporter' prometheus::process_exporter::user: 'process-exporter' prometheus::process_exporter::version: '0.5.0' prometheus::process_exporter::config_path: '/etc/process-exporter.yaml' @@ -154,6 +159,7 @@ prometheus::rabbitmq_exporter::extra_groups: [] prometheus::rabbitmq_exporter::group: 'rabbitmq-exporter' prometheus::rabbitmq_exporter::package_ensure: 'latest' prometheus::rabbitmq_exporter::package_name: 'rabbitmq_exporter' +prometheus::rabbitmq_exporter::service_name: 'rabbitmq_exporter' prometheus::rabbitmq_exporter::user: 'rabbitmq-exporter' prometheus::rabbitmq_exporter::version: '0.25.2' prometheus::rabbitmq_exporter::rabbit_url: 'http://localhost:15672' @@ -173,6 +179,7 @@ prometheus::mysqld_exporter::extra_groups: [] prometheus::mysqld_exporter::group: 'mysqld-exporter' prometheus::mysqld_exporter::package_ensure: 'latest' prometheus::mysqld_exporter::package_name: 'mysqld_exporter' +prometheus::mysqld_exporter::service_name: 'mysqld_exporter' prometheus::mysqld_exporter::user: 'mysqld-exporter' prometheus::mysqld_exporter::version: '0.12.0' prometheus::mongodb_exporter::cnf_uri: 'mongodb://localhost:27017' @@ -182,6 +189,7 @@ prometheus::mongodb_exporter::extra_groups: [] prometheus::mongodb_exporter::group: 'mongodb-exporter' prometheus::mongodb_exporter::package_ensure: 'latest' prometheus::mongodb_exporter::package_name: 'mongodb_exporter' +prometheus::mongodb_exporter::service_name: 'mongodb_exporter' prometheus::mongodb_exporter::user: 'mongodb-exporter' prometheus::mongodb_exporter::version: '0.3.1' prometheus::mongodb_exporter::use_kingpin: false @@ -201,6 +209,7 @@ prometheus::beanstalkd_exporter::extra_groups: [] prometheus::beanstalkd_exporter::group: 'beanstalkd-exporter' prometheus::beanstalkd_exporter::package_ensure: 'latest' prometheus::beanstalkd_exporter::package_name: 'beanstalkd_exporter' +prometheus::beanstalkd_exporter::service_name: 'beanstalkd_exporter' prometheus::beanstalkd_exporter::user: 'beanstalkd-exporter' prometheus::beanstalkd_exporter::version: '1.0.0' prometheus::beanstalkd_exporter::mapping_config: '/etc/beanstalkd-exporter-mapping.conf' @@ -228,6 +237,7 @@ prometheus::snmp_exporter::extra_groups: [] prometheus::snmp_exporter::group: 'snmp-exporter' prometheus::snmp_exporter::package_ensure: 'latest' prometheus::snmp_exporter::package_name: 'snmp_exporter' +prometheus::snmp_exporter::service_name: 'snmp_exporter' prometheus::snmp_exporter::user: 'snmp-exporter' prometheus::snmp_exporter::version: '0.15.0' prometheus::statsd_exporter::download_extension: 'tar.gz' @@ -238,6 +248,7 @@ prometheus::statsd_exporter::mapping_config_path: '/etc/statsd-exporter-mapping. prometheus::statsd_exporter::mappings: [] prometheus::statsd_exporter::package_ensure: 'latest' prometheus::statsd_exporter::package_name: 'statsd_exporter' +prometheus::statsd_exporter::service_name: 'statsd_exporter' prometheus::statsd_exporter::user: 'statsd-exporter' prometheus::statsd_exporter::version: '0.12.1' prometheus::storage_retention: '360h' # 15d; "d" suffix is only supported with prom >= 2.* @@ -278,6 +289,7 @@ prometheus::varnish_exporter::extra_groups: [] prometheus::varnish_exporter::group: 'varnish' prometheus::varnish_exporter::package_ensure: 'latest' prometheus::varnish_exporter::package_name: 'prometheus_varnish_exporter' +prometheus::varnish_exporter::service_name: 'prometheus_varnish_exporter' prometheus::varnish_exporter::user: 'varnish_exporter' prometheus::varnish_exporter::version: '1.5' prometheus::graphite_exporter::download_extension: 'tar.gz' @@ -285,6 +297,7 @@ prometheus::graphite_exporter::download_url_base: 'https://github.com/prometheus prometheus::graphite_exporter::group: 'graphite-exporter' prometheus::graphite_exporter::package_ensure: 'latest' prometheus::graphite_exporter::package_name: 'graphite_exporter' +prometheus::graphite_exporter::service_name: 'graphite_exporter' prometheus::graphite_exporter::user: 'graphite-exporter' prometheus::graphite_exporter::version: '0.2.0' prometheus::graphite_exporter::options: '' @@ -293,6 +306,7 @@ prometheus::collectd_exporter::download_url_base: 'https://github.com/prometheus prometheus::collectd_exporter::group: 'collectd-exporter' prometheus::collectd_exporter::package_ensure: 'latest' prometheus::collectd_exporter::package_name: 'collectd_exporter' +prometheus::collectd_exporter::service_name: 'collectd_exporter' prometheus::collectd_exporter::user: 'collectd-exporter' prometheus::collectd_exporter::version: '0.4.0' prometheus::collectd_exporter::options: '' diff --git a/manifests/apache_exporter.pp b/manifests/apache_exporter.pp index baea56054..a8f3185da 100644 --- a/manifests/apache_exporter.pp +++ b/manifests/apache_exporter.pp @@ -90,7 +90,7 @@ $options = "-scrape_uri \"${scrape_uri}\" ${extra_options}" - prometheus::daemon { $service_name: + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/beanstalkd_exporter.pp b/manifests/beanstalkd_exporter.pp index ab5bd4055..323474a99 100644 --- a/manifests/beanstalkd_exporter.pp +++ b/manifests/beanstalkd_exporter.pp @@ -47,6 +47,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the beanstalkd exporter service (default 'beanstalkd_exporter') # @param user # User which runs the service # @param version @@ -58,6 +60,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, String $config, @@ -88,7 +91,7 @@ $real_download_url = pick($download_url,"${download_url_base}/download/${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['beanstalkd_exporter'], + true => Service[$service_name], default => undef, } @@ -97,15 +100,15 @@ file { $config: ensure => file, content => $beanstalkd_address, - before => Prometheus::Daemon['beanstalkd_exporter'], + before => Prometheus::Daemon[$name], } file { $mapping_config: ensure => file, - before => Prometheus::Daemon['beanstalkd_exporter'], + before => Prometheus::Daemon[$name], } - prometheus::daemon { 'beanstalkd_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/bird_exporter.pp b/manifests/bird_exporter.pp index 76a28425a..306965c7a 100644 --- a/manifests/bird_exporter.pp +++ b/manifests/bird_exporter.pp @@ -90,7 +90,7 @@ default => undef, } - prometheus::daemon { $service_name : + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/blackbox_exporter.pp b/manifests/blackbox_exporter.pp index 6ae00e0d0..377e9a483 100644 --- a/manifests/blackbox_exporter.pp +++ b/manifests/blackbox_exporter.pp @@ -117,7 +117,7 @@ } - prometheus::daemon { $service_name : + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/collectd_exporter.pp b/manifests/collectd_exporter.pp index dbb65ecc9..76c847461 100644 --- a/manifests/collectd_exporter.pp +++ b/manifests/collectd_exporter.pp @@ -37,6 +37,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the collectd exporter service (default 'collectd_exporter') # @param user # User which runs the service # @param version @@ -47,6 +49,7 @@ String[1] $group, String[1] $package_ensure, String[1] $package_name, + String[1] $service_name, String[1] $user, String[1] $version, String $options, @@ -72,11 +75,11 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['collectd_exporter'], + true => Service[$service_name], default => undef, } - prometheus::daemon { 'collectd_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/consul_exporter.pp b/manifests/consul_exporter.pp index 71f3307be..c67f748aa 100644 --- a/manifests/consul_exporter.pp +++ b/manifests/consul_exporter.pp @@ -45,6 +45,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the consul exporter service (default 'consul_exporter') # @param user # User which runs the service # @param version @@ -63,6 +65,7 @@ String $log_level, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, String $web_listen_address, @@ -105,7 +108,7 @@ } $notify_service = $restart_on_change ? { - true => Service['consul_exporter'], + true => Service[$service_name], default => undef, } @@ -115,7 +118,7 @@ $options = "--consul.server=${consul_server} ${real_consul_health_summary} --web.listen-address=${web_listen_address} --web.telemetry-path=${web_telemetry_path} --log.level=${log_level} ${extra_options}" } - prometheus::daemon { 'consul_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/elasticsearch_exporter.pp b/manifests/elasticsearch_exporter.pp index fc71e001c..e88c2a9ff 100644 --- a/manifests/elasticsearch_exporter.pp +++ b/manifests/elasticsearch_exporter.pp @@ -60,6 +60,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Boolean $use_kingpin, @@ -87,7 +88,7 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['elasticsearch_exporter'], + true => Service[$service_name], default => undef, } @@ -98,7 +99,7 @@ $options = "${flag_prefix}es.uri=${cnf_uri} ${flag_prefix}es.timeout=${cnf_timeout} ${extra_options}" - prometheus::daemon { 'elasticsearch_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/graphite_exporter.pp b/manifests/graphite_exporter.pp index 2a50e2a59..bf0b9e88a 100644 --- a/manifests/graphite_exporter.pp +++ b/manifests/graphite_exporter.pp @@ -37,6 +37,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the graphite exporter service (default 'graphite_exporter') # @param user # User which runs the service # @param version @@ -47,6 +49,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, String $options, @@ -72,11 +75,11 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['graphite_exporter'], + true => Service[$service_name], default => undef, } - prometheus::daemon { 'graphite_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/haproxy_exporter.pp b/manifests/haproxy_exporter.pp index d0f4134d0..c861853e6 100644 --- a/manifests/haproxy_exporter.pp +++ b/manifests/haproxy_exporter.pp @@ -54,9 +54,9 @@ String $group, String $package_ensure, String $package_name, - String[1] $service_name, String $user, String $version, + String[1] $service_name, Prometheus::Uri $download_url_base, Boolean $purge_config_dir = true, Boolean $restart_on_change = true, @@ -86,7 +86,7 @@ $options = "--haproxy.scrape-uri=\"${cnf_scrape_uri}\" ${extra_options}" - prometheus::daemon { $service_name: + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/mesos_exporter.pp b/manifests/mesos_exporter.pp index 80a7ae822..bb296e439 100644 --- a/manifests/mesos_exporter.pp +++ b/manifests/mesos_exporter.pp @@ -43,6 +43,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the mesos exporter service (default 'mesos_exporter') # @param user # User which runs the service # @param version @@ -56,6 +58,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Boolean $purge_config_dir = true, @@ -80,13 +83,13 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['mesos_exporter'], + true => Service[$service_name], default => undef, } $options = "-${server_type} ${cnf_scrape_uri} ${extra_options}" - prometheus::daemon { 'mesos_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/mongodb_exporter.pp b/manifests/mongodb_exporter.pp index cd24e3344..94242d007 100644 --- a/manifests/mongodb_exporter.pp +++ b/manifests/mongodb_exporter.pp @@ -41,6 +41,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the mongodb exporter service (default 'mongodb_exporter') # @param user # User which runs the service # @param version @@ -57,6 +59,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Boolean $use_kingpin, @@ -84,7 +87,7 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['mongodb_exporter'], + true => Service[$service_name], default => undef, } @@ -95,7 +98,7 @@ $options = "${flag_prefix}mongodb.uri=${cnf_uri} ${extra_options}" - prometheus::daemon { 'mongodb_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/mysqld_exporter.pp b/manifests/mysqld_exporter.pp index f76d27c44..c44b8fee0 100644 --- a/manifests/mysqld_exporter.pp +++ b/manifests/mysqld_exporter.pp @@ -54,6 +54,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the mysqld exporter service (default 'mysqld_exporter') # @param user # User which runs the service # @param version @@ -65,6 +67,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Stdlib::Absolutepath $cnf_config_path = '/etc/.my.cnf', @@ -97,7 +100,7 @@ #Please provide the download_url for versions < 0.9.0 $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['mysqld_exporter'], + true => Service[$service_name], default => undef, } @@ -126,7 +129,7 @@ } else { $options = "--config.my-cnf=${cnf_config_path} ${extra_options}" } - prometheus::daemon { 'mysqld_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/nginx_vts_exporter.pp b/manifests/nginx_vts_exporter.pp index d923a486f..05248c6a7 100644 --- a/manifests/nginx_vts_exporter.pp +++ b/manifests/nginx_vts_exporter.pp @@ -41,6 +41,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the nginx-vts exporter service (default 'nginx-vts-exporter') # @param user # User which runs the service # @param version @@ -53,6 +55,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Boolean $purge_config_dir = true, @@ -77,13 +80,13 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['nginx-vts-exporter'], + true => Service[$service_name], default => undef, } $options = "-nginx.scrape_uri=\"${nginx_scrape_uri}\" ${extra_options}" - prometheus::daemon { 'nginx-vts-exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/node_exporter.pp b/manifests/node_exporter.pp index c67c08918..23f446778 100644 --- a/manifests/node_exporter.pp +++ b/manifests/node_exporter.pp @@ -118,7 +118,7 @@ join($cmd_collectors_enable, ' '), join($cmd_collectors_disable, ' ') ], ' ') - prometheus::daemon { $service_name : + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/postfix_exporter.pp b/manifests/postfix_exporter.pp index 9f79805ee..bd775e69a 100644 --- a/manifests/postfix_exporter.pp +++ b/manifests/postfix_exporter.pp @@ -94,7 +94,7 @@ default => undef, } - prometheus::daemon { $service_name: + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/postgres_exporter.pp b/manifests/postgres_exporter.pp index 39b847603..e57346c71 100644 --- a/manifests/postgres_exporter.pp +++ b/manifests/postgres_exporter.pp @@ -128,34 +128,34 @@ # postgres_exporter lacks. # TODO: patch prometheus::daemon to support custom extract directories $exporter_install_method = 'none' - $install_dir = "/opt/${service_name}-${version}.${os}-${arch}" + $install_dir = "/opt/${name}-${version}.${os}-${arch}" file { $install_dir: ensure => 'directory', owner => 'root', group => 0, # 0 instead of root because OS X uses "wheel". mode => '0555', } - -> archive { "/tmp/${service_name}-${version}.${download_extension}": + -> archive { "/tmp/${name}-${version}.${download_extension}": ensure => present, extract => true, extract_path => $install_dir, extract_flags => '--strip-components=1 -xzf', source => $real_download_url, checksum_verify => false, - creates => "${install_dir}/${service_name}", + creates => "${install_dir}/${name}", cleanup => true, } - -> file { "${bin_dir}/${service_name}": + -> file { "${bin_dir}/${name}": ensure => link, notify => $notify_service, - target => "${install_dir}/${service_name}", - before => Prometheus::Daemon[$service_name], + target => "${install_dir}/${name}", + before => Prometheus::Daemon[$name], } } else { $exporter_install_method = $install_method } - prometheus::daemon { $service_name: + prometheus::daemon { $name install_method => $exporter_install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/process_exporter.pp b/manifests/process_exporter.pp index 15f8be117..7496720d5 100644 --- a/manifests/process_exporter.pp +++ b/manifests/process_exporter.pp @@ -39,6 +39,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the process exporter service (default 'process-exporter') # @param user # User which runs the service # @param version @@ -75,6 +77,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Stdlib::Absolutepath $config_path, @@ -104,7 +107,7 @@ $filename = "${package_name}-${version}.${os}-${arch}.${download_extension}" $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${filename}") $notify_service = $restart_on_change ? { - true => Service['process-exporter'], + true => Service[$service_name], default => undef, } @@ -125,7 +128,7 @@ $options = "-config.path=${config_path} ${extra_options}" - prometheus::daemon { 'process-exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/rabbitmq_exporter.pp b/manifests/rabbitmq_exporter.pp index c6682f790..e5ae9ee45 100644 --- a/manifests/rabbitmq_exporter.pp +++ b/manifests/rabbitmq_exporter.pp @@ -39,6 +39,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the rabbitmq exporter service (default 'rabbitmq_exporter') # @param user # User which runs the service # @param version @@ -68,6 +70,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $download_extension, String $user, String $version, @@ -101,7 +104,7 @@ $real_download_url = pick($download_url, "${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['rabbitmq_exporter'], + true => Service[$service_name], default => undef, } @@ -117,7 +120,7 @@ $real_env_vars = merge($env_vars, $extra_env_vars) - prometheus::daemon { 'rabbitmq_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/redis_exporter.pp b/manifests/redis_exporter.pp index 7e8667dac..5da63c099 100644 --- a/manifests/redis_exporter.pp +++ b/manifests/redis_exporter.pp @@ -104,34 +104,34 @@ # redis_exporter lacks before version 1.0.0 # TODO: patch prometheus::daemon to support custom extract directories $real_install_method = 'none' - $install_dir = "/opt/${service_name}-${version}.${os}-${arch}" + $install_dir = "/opt/${name}-${version}.${os}-${arch}" file { $install_dir: ensure => 'directory', owner => 'root', group => 0, # 0 instead of root because OS X uses "wheel". mode => '0555', } - -> archive { "/tmp/${service_name}-${version}.${download_extension}": + -> archive { "/tmp/${name}-${version}.${download_extension}": ensure => present, extract => true, extract_path => $install_dir, source => $real_download_url, checksum_verify => false, - creates => "${install_dir}/${service_name}", + creates => "${install_dir}/${name}", cleanup => true, } - -> file { "${bin_dir}/${service_name}": + -> file { "${bin_dir}/${name}": ensure => link, notify => $notify_service, - target => "${install_dir}/${service_name}", - before => Prometheus::Daemon[$service_name], + target => "${install_dir}/${name}", + before => Prometheus::Daemon[$name], } } } else { $real_install_method = $install_method } - prometheus::daemon { $service_name: + prometheus::daemon { $name: install_method => $real_install_method, version => $release, download_extension => $download_extension, diff --git a/manifests/snmp_exporter.pp b/manifests/snmp_exporter.pp index ad68c7f71..5cd16ccdc 100644 --- a/manifests/snmp_exporter.pp +++ b/manifests/snmp_exporter.pp @@ -45,6 +45,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the snmp exporter service (default 'snmp_exporter') # @param user # User which runs the service # @param version @@ -58,6 +60,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Boolean $purge_config_dir = true, @@ -84,7 +87,7 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['snmp_exporter'], + true => Service[$service_name], default => undef, } @@ -116,7 +119,7 @@ notify => $notify_service, } - prometheus::daemon { 'snmp_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/statsd_exporter.pp b/manifests/statsd_exporter.pp index 79931c7e0..d563f9109 100644 --- a/manifests/statsd_exporter.pp +++ b/manifests/statsd_exporter.pp @@ -41,6 +41,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the statsd exporter service (default 'statsd_exporter') # @param mappings # The hiera array for mappings: # - map: 'test.dispatcher.*.*.*' @@ -60,6 +62,7 @@ Stdlib::Absolutepath $mapping_config_path, String $package_ensure, String $package_name, + String[1] $service_name, Array[Hash] $mappings, String $user, String $version, @@ -92,7 +95,7 @@ $real_download_url = pick($download_url,"${download_url_base}/download/v${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service['statsd_exporter'], + true => Service[$service_name], default => undef, } @@ -113,7 +116,7 @@ } $options = "${option_prefix}statsd.mapping-config=\'${prometheus::statsd_exporter::mapping_config_path}\' ${prometheus::statsd_exporter::extra_options}" - prometheus::daemon { 'statsd_exporter': + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension, diff --git a/manifests/varnish_exporter.pp b/manifests/varnish_exporter.pp index bae04274e..7cced6bde 100644 --- a/manifests/varnish_exporter.pp +++ b/manifests/varnish_exporter.pp @@ -39,6 +39,8 @@ # Whether to enable the service from puppet (default true) # @param service_ensure # State ensured for the service (default 'running') +# @param service_name +# Name of the varnish exporter service (default 'statsd_exporter') # @param user # User which runs the service # @param version @@ -49,6 +51,7 @@ String $group, String $package_ensure, String $package_name, + String[1] $service_name, String $user, String $version, Prometheus::Uri $download_url_base, @@ -74,12 +77,12 @@ $real_download_url = pick($download_url,"${download_url_base}/download/${version}/${package_name}-${version}.${os}-${arch}.${download_extension}") $notify_service = $restart_on_change ? { - true => Service[$package_name], + true => Service[$service_name], default => undef, } $options = " ${extra_options}" - prometheus::daemon { $package_name: + prometheus::daemon { $name: install_method => $install_method, version => $version, download_extension => $download_extension,