Puppet Class: kapacitor::config

Defined in:
manifests/config.pp

Summary

Manages directories and files; service defaults

Overview

Examples:

include kapacitor::config

Parameters:

  • config_ensure (String) (defaults to: $kapacitor::config_ensure)
  • configuration_path (Stdlib::Absolutepath) (defaults to: $kapacitor::configuration_path)
  • configuration_file (String) (defaults to: $kapacitor::configuration_file)
  • configuration_template (String) (defaults to: $kapacitor::configuration_template)
  • service_defaults (Stdlib::Absolutepath) (defaults to: $kapacitor::service_defaults)
  • service_default_template (String) (defaults to: $kapacitor::service_default_template)
  • service_definition (Stdlib::Absolutepath) (defaults to: $kapacitor::service_definition)
  • service_definition_template (String) (defaults to: $kapacitor::service_definition_template)
  • hostname (Stdlib::Fqdn) (defaults to: $kapacitor::hostname)
  • data_dir (Stdlib::Absolutepath) (defaults to: $kapacitor::data_dir)
  • data_dir_manage (Enum['directory', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::data_dir_manage)
  • skip_config_overrides (Boolean) (defaults to: $kapacitor::skip_config_overrides)
  • default_retention_policy (String) (defaults to: $kapacitor::default_retention_policy)
  • config_override_enabled (Boolean) (defaults to: $kapacitor::config_override_enabled)
  • logging_file (Stdlib::Absolutepath) (defaults to: $kapacitor::logging_file)
  • logging_file_manage (Enum['present', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::logging_file_manage)
  • logging_level (String) (defaults to: $kapacitor::logging_level)
  • load_enabled (Boolean) (defaults to: $kapacitor::load_enabled)
  • load_dir (Stdlib::Absolutepath) (defaults to: $kapacitor::load_dir)
  • load_dir_manage (Enum['directory', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::load_dir_manage)
  • replay_dir (Stdlib::Absolutepath) (defaults to: $kapacitor::replay_dir)
  • replay_dir_manage (Enum['directory', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::replay_dir_manage)
  • task_dir (Stdlib::Absolutepath) (defaults to: $kapacitor::task_dir)
  • task_dir_manage (Enum['directory', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::task_dir_manage)
  • task_snapshot_interval (String) (defaults to: $kapacitor::task_snapshot_interval)
  • storage_boltdb (Stdlib::Absolutepath) (defaults to: $kapacitor::storage_boltdb)
  • storage_boltdb_manage (Enum['present', 'absent']) (defaults to: $kapacitor::config_ensure ? { 'absent' => 'absent', default => $kapacitor::storage_boltdb_manage)
  • user (String) (defaults to: $kapacitor::user)
  • group (String) (defaults to: $kapacitor::group)
  • configuration_http (Hash) (defaults to: $kapacitor::configuration_http)
  • configuration_tls (Hash) (defaults to: $kapacitor::configuration_tls)
  • configuration_deadman (Hash) (defaults to: $kapacitor::configuration_deadman)
  • configuration_influxdb (Hash) (defaults to: $kapacitor::configuration_influxdb)
  • configuration_kubernetes (Hash) (defaults to: $kapacitor::configuration_kubernetes)
  • configuration_smtp (Hash) (defaults to: $kapacitor::configuration_smtp)
  • configuration_snmptrap (Hash) (defaults to: $kapacitor::configuration_snmptrap)
  • configuration_opsgenie (Hash) (defaults to: $kapacitor::configuration_opsgenie)
  • configuration_opsgenie2 (Hash) (defaults to: $kapacitor::configuration_opsgenie2)
  • configuration_victorops (Hash) (defaults to: $kapacitor::configuration_victorops)
  • configuration_pagerduty (Hash) (defaults to: $kapacitor::configuration_pagerduty)
  • configuration_pagerduty2 (Hash) (defaults to: $kapacitor::configuration_pagerduty2)
  • configuration_pushover (Hash) (defaults to: $kapacitor::configuration_pushover)
  • configuration_httppost (Hash) (defaults to: $kapacitor::configuration_httppost)
  • configuration_slack (Hash) (defaults to: $kapacitor::configuration_slack)
  • configuration_telegram (Hash) (defaults to: $kapacitor::configuration_telegram)
  • configuration_hipchat (Hash) (defaults to: $kapacitor::configuration_hipchat)
  • configuration_kafka (Hash) (defaults to: $kapacitor::configuration_kafka)
  • configuration_alerta (Hash) (defaults to: $kapacitor::configuration_alerta)
  • configuration_sensu (Hash) (defaults to: $kapacitor::configuration_sensu)
  • configuration_reporting (Hash) (defaults to: $kapacitor::configuration_reporting)
  • configuration_stats (Hash) (defaults to: $kapacitor::configuration_stats)
  • configuration_udf (Hash) (defaults to: $kapacitor::configuration_udf)
  • configuration_talk (Hash) (defaults to: $kapacitor::configuration_talk)
  • configuration_mqtt (Hash) (defaults to: $kapacitor::configuration_mqtt)
  • configuration_swarm (Hash) (defaults to: $kapacitor::configuration_swarm)
  • configuration_collectd (Hash) (defaults to: $kapacitor::configuration_collectd)
  • configuration_opentsdb (Hash) (defaults to: $kapacitor::configuration_opentsdb)
  • configuration_scraper (Hash) (defaults to: $kapacitor::configuration_scraper)
  • configuration_azure (Hash) (defaults to: $kapacitor::configuration_azure)
  • configuration_consul (Hash) (defaults to: $kapacitor::configuration_consul)
  • configuration_dns (Hash) (defaults to: $kapacitor::configuration_dns)
  • configuration_ec2 (Hash) (defaults to: $kapacitor::configuration_ec2)
  • configuration_file_discovery (Hash) (defaults to: $kapacitor::configuration_file_discovery)
  • configuration_gce (Hash) (defaults to: $kapacitor::configuration_gce)
  • configuration_marathon (Hash) (defaults to: $kapacitor::configuration_marathon)
  • configuration_nerve (Hash) (defaults to: $kapacitor::configuration_nerve)
  • configuration_serverset (Hash) (defaults to: $kapacitor::configuration_serverset)
  • configuration_static_discovery (Hash) (defaults to: $kapacitor::configuration_static_discovery)
  • configuration_triton (Hash) (defaults to: $kapacitor::configuration_triton)
  • configuration_http_obligatory (Hash) (defaults to: $kapacitor::configuration_http_obligatory)


5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
# File 'manifests/config.pp', line 5

class kapacitor::config (
  String $config_ensure = $kapacitor::config_ensure,
  Stdlib::Absolutepath $configuration_path = $kapacitor::configuration_path,
  String $configuration_file = $kapacitor::configuration_file,
  String $configuration_template= $kapacitor::configuration_template,
  Stdlib::Absolutepath $service_defaults = $kapacitor::service_defaults,
  String $service_default_template = $kapacitor::service_default_template,
  Stdlib::Absolutepath $service_definition = $kapacitor::service_definition,
  String $service_definition_template = $kapacitor::service_definition_template,
  Stdlib::Fqdn $hostname = $kapacitor::hostname,
  Stdlib::Absolutepath $data_dir = $kapacitor::data_dir,
  Enum['directory', 'absent'] $data_dir_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::data_dir_manage
  },
  Boolean $skip_config_overrides = $kapacitor::skip_config_overrides,
  String $default_retention_policy = $kapacitor::default_retention_policy,
  Boolean $config_override_enabled = $kapacitor::config_override_enabled,
  Stdlib::Absolutepath $logging_file = $kapacitor::logging_file,
  Enum['present', 'absent'] $logging_file_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::logging_file_manage,
  },
  String $logging_level = $kapacitor::logging_level,
  Boolean $load_enabled = $kapacitor::load_enabled,
  Stdlib::Absolutepath $load_dir = $kapacitor::load_dir,
  Enum['directory', 'absent'] $load_dir_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::load_dir_manage,
  },
  Stdlib::Absolutepath $replay_dir = $kapacitor::replay_dir,
  Enum['directory', 'absent'] $replay_dir_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::replay_dir_manage,
  },
  Stdlib::Absolutepath $task_dir = $kapacitor::task_dir,
  Enum['directory', 'absent'] $task_dir_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::task_dir_manage,
  },
  String $task_snapshot_interval = $kapacitor::task_snapshot_interval,
  Stdlib::Absolutepath $storage_boltdb = $kapacitor::storage_boltdb,
  Enum['present', 'absent'] $storage_boltdb_manage = $kapacitor::config_ensure ? {
    'absent' => 'absent',
    default  => $kapacitor::storage_boltdb_manage,
  },
  String $user = $kapacitor::user,
  String $group = $kapacitor::group,
  Hash $configuration_http = $kapacitor::configuration_http,
  Hash $configuration_tls = $kapacitor::configuration_tls,
  Hash $configuration_deadman = $kapacitor::configuration_deadman,
  Hash $configuration_influxdb = $kapacitor::configuration_influxdb,
  Hash $configuration_kubernetes = $kapacitor::configuration_kubernetes,
  Hash $configuration_smtp = $kapacitor::configuration_smtp,
  Hash $configuration_snmptrap = $kapacitor::configuration_snmptrap,
  Hash $configuration_opsgenie = $kapacitor::configuration_opsgenie,
  Hash $configuration_opsgenie2 = $kapacitor::configuration_opsgenie2,
  Hash $configuration_victorops = $kapacitor::configuration_victorops,
  Hash $configuration_pagerduty = $kapacitor::configuration_pagerduty,
  Hash $configuration_pagerduty2 = $kapacitor::configuration_pagerduty2,
  Hash $configuration_pushover = $kapacitor::configuration_pushover,
  Hash $configuration_httppost = $kapacitor::configuration_httppost,
  Hash $configuration_slack = $kapacitor::configuration_slack,
  Hash $configuration_telegram = $kapacitor::configuration_telegram,
  Hash $configuration_hipchat = $kapacitor::configuration_hipchat,
  Hash $configuration_kafka = $kapacitor::configuration_kafka,
  Hash $configuration_alerta = $kapacitor::configuration_alerta,
  Hash $configuration_sensu = $kapacitor::configuration_sensu,
  Hash $configuration_reporting = $kapacitor::configuration_reporting,
  Hash $configuration_stats = $kapacitor::configuration_stats,
  Hash $configuration_udf = $kapacitor::configuration_udf,
  Hash $configuration_talk = $kapacitor::configuration_talk,
  Hash $configuration_mqtt = $kapacitor::configuration_mqtt,
  Hash $configuration_swarm = $kapacitor::configuration_swarm,
  Hash $configuration_collectd = $kapacitor::configuration_collectd,
  Hash $configuration_opentsdb = $kapacitor::configuration_opentsdb,
  Hash $configuration_scraper = $kapacitor::configuration_scraper,
  Hash $configuration_azure = $kapacitor::configuration_azure,
  Hash $configuration_consul = $kapacitor::configuration_consul,
  Hash $configuration_dns = $kapacitor::configuration_dns,
  Hash $configuration_ec2 = $kapacitor::configuration_ec2,
  Hash $configuration_file_discovery = $kapacitor::configuration_file_discovery,
  Hash $configuration_gce = $kapacitor::configuration_gce,
  Hash $configuration_marathon = $kapacitor::configuration_marathon,
  Hash $configuration_nerve = $kapacitor::configuration_nerve,
  Hash $configuration_serverset = $kapacitor::configuration_serverset,
  Hash $configuration_static_discovery = $kapacitor::configuration_static_discovery,
  Hash $configuration_triton = $kapacitor::configuration_triton,

  Hash $configuration_http_obligatory = $kapacitor::configuration_http_obligatory,
) {
  $template_http = deep_merge($configuration_http_obligatory, $configuration_http)

  $directory_ensure = $config_ensure ? {
    'absent' => 'absent',
    default  => 'directory'
  }

  $file_ensure = $config_ensure ? {
    'absent' => 'absent',
    default  => 'present'
  }

  $service_definition_ensure = $config_ensure ? {
    'absent' => 'absent',
    default  => 'present'
  }

  file { $configuration_path:
    ensure => $directory_ensure,
    force  => true,
    owner  => 'root',
    group  => 'root',
    mode   => '0755',
  }

  -> file { "${configuration_path}/${configuration_file}":
    ensure  => $file_ensure,
    owner   => 'root',
    group   => 'root',
    mode    => '0644',
    content => template($configuration_template),
  }

  -> file { $service_defaults:
    ensure  => $file_ensure,
    owner   => 'root',
    group   => 'root',
    mode    => '0644',
    content => template($service_default_template),
  }

  -> file { $service_definition:
    ensure  => $service_definition_ensure,
    owner   => 'root',
    group   => 'root',
    mode    => '0644',
    content => template($service_definition_template),
  }

  file { $data_dir:
    ensure => $data_dir_manage,
    force  => true,
    owner  => $user,
    group  => $group,
    mode   => '0755',
  }

  file { $logging_file:
    ensure => $logging_file_manage,
    owner  => $user,
    group  => $group,
    mode   => '0755',
  }

  file { $load_dir:
    ensure => $load_dir_manage,
    force  => true,
    owner  => 'root',
    group  => 'root',
    mode   => '0755',
  }

  file { $replay_dir:
    ensure => $replay_dir_manage,
    force  => true,
    owner  => $user,
    group  => $group,
    mode   => '0755',
  }

  file { $task_dir:
    ensure => $task_dir_manage,
    force  => true,
    owner  => $user,
    group  => $group,
    mode   => '0755',
  }

  file { $storage_boltdb:
    ensure => $storage_boltdb_manage,
    owner  => $user,
    group  => $group,
    mode   => '0755',
  }
}