init.sls 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. #
  2. # grafana
  3. #
  4. {% set grafana_cfg = salt['pillar.get']('grafana') %}
  5. {% set node_config = salt['pillar.get']('nodes:' ~ grains['id']) %}
  6. grafana:
  7. # add Grafana Repo
  8. file.managed:
  9. - names:
  10. - /usr/share/keyrings/grafana.key:
  11. - source: salt://grafana/grafana.key
  12. - /etc/apt/sources.list.d/grafana.list:
  13. - source: salt://grafana/grafana.list.tmpl
  14. - template: jinja
  15. - require:
  16. - file: /usr/share/keyrings/grafana.key
  17. # install grafana
  18. pkg.installed:
  19. - name: grafana
  20. - require:
  21. - file: /etc/apt/sources.list.d/grafana.list
  22. service.running:
  23. - name: grafana-server
  24. - enable: True
  25. - require:
  26. - pkg: grafana
  27. - file: /etc/grafana/grafana.ini
  28. - file: /etc/grafana/ldap.toml
  29. - user: grafana
  30. - watch:
  31. - file: /etc/grafana/grafana.ini
  32. - file: /etc/grafana/ldap.toml
  33. # add user 'grafana' to group 'ssl-cert' to access ssl-key file
  34. user.present:
  35. - name: grafana
  36. - system: True
  37. - groups:
  38. - ssl-cert
  39. - require:
  40. - pkg: grafana
  41. /etc/grafana/grafana.ini:
  42. file.managed:
  43. - source: salt://grafana/grafana.ini.tmpl
  44. - template: jinja
  45. config: {{ grafana_cfg }}
  46. - require:
  47. - pkg: grafana
  48. /etc/grafana/ldap.toml:
  49. {% if 'ldap' in grafana_cfg %}
  50. file.managed:
  51. - source: salt://grafana/ldap.toml.tmpl
  52. - template: jinja
  53. config: {{ grafana_cfg.ldap }}
  54. {% else %}
  55. file.absent:
  56. {% endif %}
  57. - require:
  58. - pkg: grafana
  59. #
  60. # Plugins
  61. # Grafana-Piechart-Panel
  62. grafana-piechart:
  63. cmd.run:
  64. - name: grafana-cli plugins install grafana-piechart-panel
  65. - creates: /var/lib/grafana/plugins/grafana-piechart-panel
  66. - watch_in:
  67. - service: grafana
  68. grafana-imagerenderer-deps:
  69. pkg.installed:
  70. - pkgs:
  71. - libxdamage1
  72. - libxext6
  73. - libxi6
  74. - libxtst6
  75. - libnss3
  76. - libnss3
  77. - libcups2
  78. - libxss1
  79. - libxrandr2
  80. - libasound2
  81. - libatk1.0-0
  82. - libatk-bridge2.0-0
  83. - libpangocairo-1.0-0
  84. - libpango-1.0-0
  85. - libcairo2
  86. - libatspi2.0-0
  87. - libgtk3.0-cil
  88. - libgdk3.0-cil
  89. - libx11-xcb-dev
  90. grafana-imagerenderer:
  91. cmd.run:
  92. - name: grafana-cli plugins install grafana-image-renderer
  93. - creates: /var/lib/grafana/plugins/grafana-image-renderer
  94. - watch_in:
  95. - service: grafana
  96. - require:
  97. - pkg: grafana-imagerenderer-deps