{%- if pillar.grafana.server.enabled %} include: - git - nodejs /srv/grafana: file: - directory - mode: 755 - makedirs: true {% if pillar.grafana.server.source.type == 'git' %} grafana_repository: git.latest: - name: {{ pillar.grafana.server.source.address }} - rev: {{ pillar.grafana.server.source.rev }} - target: /srv/grafana/site - require: - file: /srv/grafana - pkg: git_packages /srv/grafana/site/src/config.js: file: - managed - source: salt://grafana/conf/config.js - template: jinja - require: - git: grafana_repository grafana_install: cmd.run: - names: - npm install - npm install -g grunt-cli - cwd: /srv/grafana/site - unless: test -e /srv/grafana/site/node_modules - require: - git: grafana_repository grafana_grun_build: cmd.run: - names: - grunt build --force - cwd: /srv/grafana/site - unless: test -e /srv/grafana/site/dist - require: - git: grafana_repository - file: /srv/grafana/site/src/config.js {% elif pillar.grafana.server.source.type == 'pkg' %} {% set version = pillar.grafana.server.source.rev %} /srv/grafana/site/dist: file: - directory - mode: 755 - makedirs: true /srv/grafana/site/dist/config.js: file: - managed - source: salt://grafana/conf/config.js - template: jinja - require: - file: /srv/grafana/site/dist download_grafana: cmd.run: - names: - wget https://github.com/torkelo/grafana/releases/download/v{{ version }}/grafana-{{ version }}.tar.gz - user: root - cwd: /root - unless: test -e /root/grafana-{{ version }}.tar.gz untar_grafana: cmd.run: - names: - tar zxvf /root/grafana-{{ version }}.tar.gz -C /srv/grafana/site/dist - user: root - cwd: /root - unless: test -e /srv/grafana/dist/app - require: - file: /srv/grafana/site/dist/config.js - file: /srv/grafana/site/dist {% endif %} {%- endif %}