diff --git a/elasticsearch/plugins.sls b/elasticsearch/plugins.sls index 6fabb45..0e9c3de 100644 --- a/elasticsearch/plugins.sls +++ b/elasticsearch/plugins.sls @@ -10,8 +10,19 @@ include: {%- set plugin_bin = 'plugin' %} {% endif %} +{% set es_version = salt['pkg.info_installed']('elasticsearch').get('elasticsearch', {}).get('version') %} {% for name, repo in plugins_pillar.items() %} -elasticsearch-{{ name }}: +{% set es_plugin_file = salt['file.find']('/usr/share/elasticsearch/plugins/' + name, type='f', iname=name + '-*.jar')[0] %} + +{% if es_version not in es_plugin_file %} +elasticsearch-plugin-remove-{{ name }}: + cmd.run: + - name: /usr/share/elasticsearch/bin/{{ plugin_bin }} remove {{ repo }} + - require: + - sls: elasticsearch.pkg +{% endif %} + +elasticsearch-plugin-install-{{ name }}: cmd.run: - name: /usr/share/elasticsearch/bin/{{ plugin_bin }} install -b {{ repo }} - require: