Allow the installation of Grafana plugins
Change-Id: I6eab0435fb169ed12c880af01ba1e76a06268825
diff --git a/README.rst b/README.rst
index 3e6b71a..0dcb4c0 100644
--- a/README.rst
+++ b/README.rst
@@ -155,6 +155,18 @@
css_override:
source: salt://path.to.theme
+Server with two additionals plugins. It requires to have access to the Internet.
+
+.. code-block:: yaml
+
+ grafana:
+ server:
+ enabled: true
+ plugins:
+ grafana-piechart-panel:
+ enabled: true
+ grafana-example-app:
+ enabled: true
Collector setup
---------------
diff --git a/grafana/server.sls b/grafana/server.sls
index feb4f79..647f54e 100644
--- a/grafana/server.sls
+++ b/grafana/server.sls
@@ -79,4 +79,15 @@
- watch:
- file: /etc/grafana/grafana.ini
+{%- for plugin_name, plugin in server.get('plugins', {}).iteritems() %}
+{%- if plugin.get('enabled', False) %}
+install_{{ plugin_name }}:
+ cmd.run:
+ - name: grafana-cli plugins install {{ plugin_name }}
+ - unless: grafana-cli plugins list-versions {{ plugin_name }}
+ - watch_in:
+ - service: grafana_service
+{%- endif %}
+{%- endfor %}
+
{%- endif %}