mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-06 17:22:49 +01:00
pillarize grafana https://github.com/Security-Onion-Solutions/securityonion/issues/1175
This commit is contained in:
8
salt/grafana/defaults.yaml
Normal file
8
salt/grafana/defaults.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
grafana:
|
||||
config:
|
||||
server:
|
||||
root_url: "%(protocol)s://%(domain)s/grafana/"
|
||||
auth.anonymous:
|
||||
enabled: true
|
||||
org_name: Main Org.
|
||||
org_role: Viewer
|
||||
@@ -307,6 +307,7 @@ org_role = Viewer
|
||||
;allow_sign_up = true
|
||||
|
||||
#################################### SMTP / Emailing ##########################
|
||||
|
||||
[smtp]
|
||||
;enabled = false
|
||||
;host = localhost:25
|
||||
|
||||
12
salt/grafana/etc/grafana.ini.jinja
Normal file
12
salt/grafana/etc/grafana.ini.jinja
Normal file
@@ -0,0 +1,12 @@
|
||||
{%- macro write_config_line(cfg) %}
|
||||
{%- for k,v in cfg.items() -%}
|
||||
{{ k }} = {{ v }}
|
||||
{% endfor %}
|
||||
{%- endmacro %}
|
||||
|
||||
{{ write_config_line(config.get("default", {})) }}
|
||||
{% for header, cfg in config.items() %}
|
||||
{%- if section == "default" %}{% continue %}{% endif %}
|
||||
[{{ header }}]
|
||||
{{ write_config_line(cfg) }}
|
||||
{% endfor %}
|
||||
@@ -9,6 +9,10 @@
|
||||
{% set IMAGEREPO = salt['pillar.get']('global:imagerepo') %}
|
||||
{% set ADMINPASS = salt['pillar.get']('secrets:grafana_admin') %}
|
||||
|
||||
{% import_yaml 'grafana/defaults.yaml' as default_settings %}
|
||||
{% set GRAFANA_SETTINGS = salt['pillar.get']('grafana', default=default_settings, merge=True) %}
|
||||
|
||||
|
||||
{% if grains['role'] in ['so-manager', 'so-managersearch', 'so-eval', 'so-standalone'] and GRAFANA == 1 %}
|
||||
|
||||
# Grafana all the things
|
||||
@@ -75,13 +79,32 @@ grafanadashsndir:
|
||||
- group: 939
|
||||
- makedirs: True
|
||||
|
||||
grafanaconf:
|
||||
file.recurse:
|
||||
- name: /opt/so/conf/grafana/etc
|
||||
grafana-dashboard-config:
|
||||
file.managed:
|
||||
- name: /opt/so/conf/grafana/etc/dashboards/dashboard.yml
|
||||
- user: 939
|
||||
- group: 939
|
||||
- template: jinja
|
||||
- source: salt://grafana/etc
|
||||
- source: salt://grafana/etc/dashboards/dashboard.yml
|
||||
|
||||
grafana-datasources-config:
|
||||
file.recurse:
|
||||
- name: /opt/so/conf/grafana/etc/datasources/influxdb.yaml
|
||||
- user: 939
|
||||
- group: 939
|
||||
- template: jinja
|
||||
- source: salt://grafana/etc/datasources/influxdb.yaml
|
||||
|
||||
grafana-config:
|
||||
file.recurse:
|
||||
- name: /opt/so/conf/grafana/etc/grafana.ini
|
||||
- user: 939
|
||||
- group: 939
|
||||
- template: jinja
|
||||
- source: salt://grafana/etc/grafana.ini.jinja
|
||||
- context:
|
||||
config: {{ GRAFANA_SETTINGS.config|json }}
|
||||
|
||||
|
||||
{% if salt['pillar.get']('managertab', False) %}
|
||||
{% for SN, SNDATA in salt['pillar.get']('managertab', {}).items() %}
|
||||
|
||||
Reference in New Issue
Block a user