Skip to content

Commit

Permalink
init.pp: Add default data from hiera
Browse files Browse the repository at this point in the history
  • Loading branch information
bastelfreak committed Aug 12, 2023
1 parent be61882 commit 5a83c4f
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 50 deletions.
44 changes: 44 additions & 0 deletions REFERENCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,8 @@ Data type: `String`

User running prometheus

Default value: `'prometheus'`

##### <a name="-prometheus--manage_group"></a>`manage_group`

Data type: `Boolean`
Expand All @@ -221,6 +223,8 @@ Data type: `String`

Group under which prometheus is running

Default value: `'prometheus'`

##### <a name="-prometheus--bin_dir"></a>`bin_dir`

Data type: `Stdlib::Absolutepath`
Expand All @@ -235,6 +239,8 @@ Data type: `Stdlib::Absolutepath`

Directory where shared files are located

Default value: `'/usr/local/share/prometheus'`

##### <a name="-prometheus--arch"></a>`arch`

Data type: `String[1]`
Expand Down Expand Up @@ -281,36 +287,48 @@ Data type: `Prometheus::Uri`

Base URL for prometheus

Default value: `'https://github.com/prometheus/prometheus/releases'`

##### <a name="-prometheus--download_extension"></a>`download_extension`

Data type: `String`

Extension of Prometheus binaries archive

Default value: `'tar.gz'`

##### <a name="-prometheus--package_name"></a>`package_name`

Data type: `String`

Prometheus package name - not available yet

Default value: `'prometheus'`

##### <a name="-prometheus--package_ensure"></a>`package_ensure`

Data type: `String`

If package, then use this for package ensurel default 'latest'

Default value: `'latest'`

##### <a name="-prometheus--config_dir"></a>`config_dir`

Data type: `String`

Prometheus configuration directory (default /etc/prometheus)

Default value: `'/etc/prometheus'`

##### <a name="-prometheus--localstorage"></a>`localstorage`

Data type: `Stdlib::Absolutepath`

Location of prometheus local storage (storage.local argument)

Default value: `'/var/lib/prometheus'`

##### <a name="-prometheus--extra_options"></a>`extra_options`

Data type: `Optional[String[1]]`
Expand Down Expand Up @@ -341,12 +359,16 @@ Data type: `String`

Configuration template to use (template/prometheus.yaml.erb)

Default value: `'prometheus/prometheus.yaml.erb'`

##### <a name="-prometheus--config_mode"></a>`config_mode`

Data type: `String`

Configuration file mode (default 0660)

Default value: `'0640'`

##### <a name="-prometheus--service_enable"></a>`service_enable`

Data type: `Boolean`
Expand Down Expand Up @@ -403,18 +425,24 @@ Data type: `Hash`

Prometheus global configuration variables

Default value: `{ 'scrape_interval' => '15s', 'evaluation_interval' => '15s', 'external_labels' => { 'monitor' => 'master' } }`

##### <a name="-prometheus--rule_files"></a>`rule_files`

Data type: `Array`

Prometheus rule files

Default value: `[]`

##### <a name="-prometheus--scrape_configs"></a>`scrape_configs`

Data type: `Array`

Prometheus scrape configs

Default value: `[]`

##### <a name="-prometheus--include_default_scrape_configs"></a>`include_default_scrape_configs`

Data type: `Boolean`
Expand All @@ -429,18 +457,24 @@ Data type: `Array`

Prometheus remote_read config to scrape prometheus 1.8+ instances

Default value: `[]`

##### <a name="-prometheus--remote_write_configs"></a>`remote_write_configs`

Data type: `Array`

Prometheus remote_write config to scrape prometheus 1.8+ instances

Default value: `[]`

##### <a name="-prometheus--alerts"></a>`alerts`

Data type: `Variant[Array,Hash]`

alert rules to put in alerts.rules

Default value: `{}`

##### <a name="-prometheus--extra_alerts"></a>`extra_alerts`

Data type: `Hash`
Expand All @@ -455,12 +489,16 @@ Data type: `Array`

Prometheus alert relabel config under alerting

Default value: `[]`

##### <a name="-prometheus--alertmanagers_config"></a>`alertmanagers_config`

Data type: `Array`

Prometheus managers config under alerting

Default value: `[]`

##### <a name="-prometheus--storage_retention"></a>`storage_retention`

Data type: `String`
Expand All @@ -469,6 +507,8 @@ How long to keep timeseries data. This is given as a duration like "100h" or "14
prometheus 1.8.*, only durations understood by golang's time.ParseDuration are supported. Starting
with prometheus 2, durations can also be given in days, weeks and years.

Default value: `'360h'`

##### <a name="-prometheus--external_url"></a>`external_url`

Data type: `Optional[Variant[Stdlib::HTTPUrl, Stdlib::Unixpath, String[1]]]`
Expand Down Expand Up @@ -839,6 +879,8 @@ Data type: `Array`

Extra groups of which the user should be a part

Default value: `[]`

##### <a name="-prometheus--proxy_server"></a>`proxy_server`

Data type: `Optional[String[1]]`
Expand Down Expand Up @@ -867,6 +909,8 @@ Data type: `Boolean`



Default value: `true`

##### <a name="-prometheus--manage_prometheus_server"></a>`manage_prometheus_server`

Data type: `Boolean`
Expand Down
28 changes: 0 additions & 28 deletions data/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ prometheus::pushprox_proxy::package_ensure: 'latest'
prometheus::pushprox_proxy::package_name: 'pushprox_proxy'
prometheus::pushprox_proxy::user: 'pushprox_proxy'
prometheus::pushprox_proxy::version: '0.1.0'
prometheus::alert_relabel_config: []
prometheus::alertmanagers_config: []
prometheus::alertmanager::config_dir: '/etc/alertmanager'
prometheus::alertmanager::manage_config: true
prometheus::alertmanager::config_file: "%{hiera('prometheus::alertmanager::config_dir')}/alertmanager.yaml"
Expand Down Expand Up @@ -57,11 +55,6 @@ prometheus::alertmanager::storage_path: '/var/lib/alertmanager'
prometheus::alertmanager::templates: [ "%{lookup('prometheus::alertmanager::config_dir')}/*.tmpl" ]
prometheus::alertmanager::user: 'alertmanager'
prometheus::alertmanager::version: '0.21.0'
prometheus::alerts: {}
prometheus::config_dir: '/etc/prometheus'
prometheus::config_mode: '0640'
prometheus::config_show_diff: true
prometheus::config_template: 'prometheus/prometheus.yaml.erb'
prometheus::consul_exporter::consul_health_summary: true
prometheus::consul_exporter::consul_server: 'localhost:8500'
prometheus::consul_exporter::download_extension: 'tar.gz'
Expand All @@ -76,8 +69,6 @@ prometheus::consul_exporter::user: 'consul-exporter'
prometheus::consul_exporter::version: '0.7.1'
prometheus::consul_exporter::web_listen_address: ':9107'
prometheus::consul_exporter::web_telemetry_path: '/metrics'
prometheus::download_extension: 'tar.gz'
prometheus::download_url_base: 'https://github.com/prometheus/prometheus/releases'
prometheus::elasticsearch_exporter::cnf_uri: 'http://localhost:9200'
prometheus::elasticsearch_exporter::cnf_timeout: '5s'
prometheus::elasticsearch_exporter::download_extension: 'tar.gz'
Expand All @@ -90,16 +81,6 @@ prometheus::elasticsearch_exporter::service_name: 'elasticsearch_exporter'
prometheus::elasticsearch_exporter::user: 'elasticsearch-exporter'
prometheus::elasticsearch_exporter::version: '1.1.0'
prometheus::elasticsearch_exporter::use_kingpin: true
prometheus::extra_groups: []
prometheus::global_config:
'scrape_interval': '15s'
'evaluation_interval': '15s'
'external_labels':
'monitor': 'master'
prometheus::group: 'prometheus'
prometheus::include_default_scrape_configs: true
prometheus::localstorage: '/var/lib/prometheus'
prometheus::manage_config: true
prometheus::mesos_exporter::server_type: 'master'
prometheus::mesos_exporter::cnf_scrape_uri: 'http://localhost:5050'
prometheus::mesos_exporter::download_extension: 'tar.gz'
Expand Down Expand Up @@ -199,13 +180,6 @@ prometheus::beanstalkd_exporter::user: 'beanstalkd-exporter'
prometheus::beanstalkd_exporter::version: '1.0.5'
prometheus::beanstalkd_exporter::mapping_config: '/etc/beanstalkd-exporter-mapping.conf'
prometheus::beanstalkd_exporter::config: '/etc/beanstalkd-exporter.conf'
prometheus::package_ensure: 'latest'
prometheus::package_name: 'prometheus'
prometheus::rule_files: []
prometheus::scrape_configs: []
prometheus::remote_read_configs: []
prometheus::remote_write_configs: []
prometheus::shared_dir: '/usr/local/share/prometheus'
prometheus::snmp_exporter::config_file: '/etc/snmp-exporter.yaml'
prometheus::snmp_exporter::config_template: ''
prometheus::snmp_exporter::download_extension: 'tar.gz'
Expand All @@ -228,5 +202,3 @@ 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.17.0'
prometheus::storage_retention: '360h' # 15d; "d" suffix is only supported with prom >= 2.*
prometheus::user: 'prometheus'
44 changes: 22 additions & 22 deletions manifests/init.pp
Original file line number Diff line number Diff line change
Expand Up @@ -221,29 +221,29 @@
# @param proxy_type
# Optional proxy server type (none|http|https|ftp)
class prometheus (
String $user,
String $group,
Array $extra_groups,
Stdlib::Absolutepath $shared_dir,
Prometheus::Uri $download_url_base,
String $download_extension,
String $package_name,
String $package_ensure,
String $config_dir,
Stdlib::Absolutepath $localstorage,
String $config_template,
String $config_mode,
Hash $global_config,
Array $rule_files,
Array $scrape_configs,
Array $remote_read_configs,
Array $remote_write_configs,
Variant[Array,Hash] $alerts,
Array $alert_relabel_config,
Array $alertmanagers_config,
String $storage_retention,
Stdlib::Absolutepath $env_file_path,
Boolean $manage_config,
Array $extra_groups = [],
Hash $global_config = { 'scrape_interval' => '15s', 'evaluation_interval' => '15s', 'external_labels' => { 'monitor' => 'master' } },
String $package_ensure = 'latest',
String $package_name = 'prometheus',
Array $rule_files = [],
Array $scrape_configs = [],
Array $remote_read_configs = [],
Array $remote_write_configs = [],
Stdlib::Absolutepath $shared_dir = '/usr/local/share/prometheus',
String $storage_retention = '360h',
String $user = 'prometheus',
Prometheus::Uri $download_url_base = 'https://github.com/prometheus/prometheus/releases',
Array $alertmanagers_config = [],
Array $alert_relabel_config = [],
String $download_extension = 'tar.gz',
String $config_template = 'prometheus/prometheus.yaml.erb',
String $config_mode = '0640',
String $config_dir = '/etc/prometheus',
Variant[Array,Hash] $alerts = {},
Boolean $manage_config = true,
String $group = 'prometheus',
Stdlib::Absolutepath $localstorage = '/var/lib/prometheus',
Stdlib::Absolutepath $bin_dir = '/usr/local/bin',
String $version = '2.30.3',
String $install_method = 'url',
Expand Down

0 comments on commit 5a83c4f

Please sign in to comment.