Reduce duplication in input config files
For input plugins that don't have specific configuration options, it is
unnecessary to have a template for each of them. This change refactors
the code to reduce the number of template files and to use include
files wherever it is possible.
Change-Id: I3dab499f6bab4ca045646c1f81c7b6649159f76f
diff --git a/telegraf/agent.sls b/telegraf/agent.sls
index fc03f2c..56bbc2a 100644
--- a/telegraf/agent.sls
+++ b/telegraf/agent.sls
@@ -24,7 +24,9 @@
input_{{ name }}:
file.managed:
- name: {{ agent.dir.config }}/input-{{ name }}.conf
- - source: salt://telegraf/files/input/{{ name }}.conf
+ - source:
+ - salt://telegraf/files/input/{{ name }}.conf
+ - salt://telegraf/files/input/generic.conf
- user: root
- group: root
- mode: 644
diff --git a/telegraf/files/input/mem.conf b/telegraf/files/input/_tags.conf
similarity index 61%
rename from telegraf/files/input/mem.conf
rename to telegraf/files/input/_tags.conf
index a12e562..f03292e 100644
--- a/telegraf/files/input/mem.conf
+++ b/telegraf/files/input/_tags.conf
@@ -1,9 +1,6 @@
-[[inputs.{{ name }}]]
-{%- if values is defined %}
-{%- if values.tags is defined %}
+{%- if values.tags is mapping %}
[inputs.{{name}}.tags]
{%- for tag_name, tag_value in values.tags.iteritems() %}
{{ tag_name }} = "{{ tag_value }}"
{%- endfor %}
{%- endif %}
-{%- endif %}
diff --git a/telegraf/files/input/cpu.conf b/telegraf/files/input/cpu.conf
index e2b7926..e698905 100644
--- a/telegraf/files/input/cpu.conf
+++ b/telegraf/files/input/cpu.conf
@@ -6,10 +6,5 @@
{%- if values.percpu is defined %}
percpu = {{ values.percpu | lower }}
{%- endif %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
{%- endif %}
diff --git a/telegraf/files/input/disk.conf b/telegraf/files/input/disk.conf
index 5308162..99abd8a 100644
--- a/telegraf/files/input/disk.conf
+++ b/telegraf/files/input/disk.conf
@@ -3,10 +3,5 @@
{%- if values.mount_points is defined%}
mount_points = {{ values.mount_points }}
{%- endif %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
{%- endif %}
diff --git a/telegraf/files/input/diskio.conf b/telegraf/files/input/diskio.conf
index e608a5a..f088584 100644
--- a/telegraf/files/input/diskio.conf
+++ b/telegraf/files/input/diskio.conf
@@ -6,10 +6,5 @@
{%- if values.skip_serial_number is defined %}
skip_serial_number = {{ values.skip_serial_number | lower }}
{%- endif %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
{%- endif %}
diff --git a/telegraf/files/input/docker.conf b/telegraf/files/input/docker.conf
index 7c05814..eec5d16 100644
--- a/telegraf/files/input/docker.conf
+++ b/telegraf/files/input/docker.conf
@@ -12,10 +12,5 @@
{%- if values.total is defined %}
total = {{ values.total | lower }}
{%- endif %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
{%- endif %}
diff --git a/telegraf/files/input/generic.conf b/telegraf/files/input/generic.conf
new file mode 100644
index 0000000..a502414
--- /dev/null
+++ b/telegraf/files/input/generic.conf
@@ -0,0 +1,2 @@
+[[inputs.{{ name }}]]
+{%- include 'telegraf/files/input/_tags.conf' %}
diff --git a/telegraf/files/input/net.conf b/telegraf/files/input/net.conf
index a12e562..a502414 100644
--- a/telegraf/files/input/net.conf
+++ b/telegraf/files/input/net.conf
@@ -1,9 +1,2 @@
[[inputs.{{ name }}]]
-{%- if values is defined %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
-{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
diff --git a/telegraf/files/input/netstat.conf b/telegraf/files/input/netstat.conf
deleted file mode 100644
index a12e562..0000000
--- a/telegraf/files/input/netstat.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-[[inputs.{{ name }}]]
-{%- if values is defined %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
-{%- endif %}
diff --git a/telegraf/files/input/processes.conf b/telegraf/files/input/processes.conf
deleted file mode 100644
index a12e562..0000000
--- a/telegraf/files/input/processes.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-[[inputs.{{ name }}]]
-{%- if values is defined %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
-{%- endif %}
diff --git a/telegraf/files/input/system.conf b/telegraf/files/input/system.conf
deleted file mode 100644
index a12e562..0000000
--- a/telegraf/files/input/system.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-[[inputs.{{ name }}]]
-{%- if values is defined %}
-{%- if values.tags is defined %}
- [inputs.{{name}}.tags]
- {%- for tag_name, tag_value in values.tags.iteritems() %}
- {{ tag_name }} = "{{ tag_value }}"
- {%- endfor %}
-{%- endif %}
-{%- endif %}