Merge pull request #5 from tcpcloud/minion_fix
Salt-minion fix
diff --git a/salt/minion/grains.sls b/salt/minion/grains.sls
index 972577c..86e9987 100644
--- a/salt/minion/grains.sls
+++ b/salt/minion/grains.sls
@@ -13,25 +13,32 @@
- require:
- {{ minion.install_state }}
-salt_minion_grains_placeholder:
- file.touch:
- - name: /etc/salt/grains.d/placeholder
+salt_minion_grains_files:
+ file.managed:
+ - names:
+ - /etc/salt/grains
+ - /etc/salt/grains.d/placeholder
+ - replace: False
- require:
- file: salt_minion_grains_dir
+{%- set new_grains = salt['cmd.run']('cat /etc/salt/grains.d/*') %}
+{%- set old_grains = salt['cmd.run']('cat /etc/salt/grains') %}
+
+{%- if new_grains != old_grains %}
+
salt_minion_grains_file:
cmd.run:
- name: cat /etc/salt/grains.d/* > /etc/salt/grains
- require:
- - file: salt_minion_grains_placeholder
- - watch_in:
- - service: salt_minion_service
+ - file: salt_minion_grains_files
salt_minion_grains_publish:
module.run:
- - name: mine.send
- - name: grains.items
+ - name: mine.update
- require:
- cmd: salt_minion_grains_file
{%- endif %}
+
+{%- endif %}