diff --git a/playbooks/roles/vhosts/grafana/defaults/main.yml b/playbooks/roles/vhosts/grafana/defaults/main.yml index a2cf29d..cc39a8a 100644 --- a/playbooks/roles/vhosts/grafana/defaults/main.yml +++ b/playbooks/roles/vhosts/grafana/defaults/main.yml @@ -3,3 +3,11 @@ grafana_root_dir: /srv/grafana/grafana-as-code grafana_domain: grafana.svc.plus metrics_domain: metrics.svc.plus prom_url_for_grafana: "https://{{ metrics_domain }}/prom/" + +# Plugin configuration +grafana_plugins_enable_alpha: true +grafana_plugins_app_tls_skip_verify_insecure: false +grafana_allow_loading_unsigned_plugins: + - zinclabs_openobserve +grafana_admin_user: admin +grafana_admin_password: admin diff --git a/playbooks/roles/vhosts/grafana/tasks/main.yml b/playbooks/roles/vhosts/grafana/tasks/main.yml index 9826d4c..9b02200 100644 --- a/playbooks/roles/vhosts/grafana/tasks/main.yml +++ b/playbooks/roles/vhosts/grafana/tasks/main.yml @@ -59,6 +59,15 @@ mode: '0644' when: inventory_hostname in groups[group] +- name: Configure Grafana ini + ansible.builtin.template: + src: grafana.ini.j2 + dest: /etc/grafana/grafana.ini + owner: root + group: grafana + mode: '0640' + when: inventory_hostname in groups[group] + - name: Install grafana dashboard pull timer ansible.builtin.template: src: grafana-dash-pull.timer.j2 diff --git a/playbooks/roles/vhosts/grafana/templates/grafana.ini.j2 b/playbooks/roles/vhosts/grafana/templates/grafana.ini.j2 new file mode 100644 index 0000000..bdb19d4 --- /dev/null +++ b/playbooks/roles/vhosts/grafana/templates/grafana.ini.j2 @@ -0,0 +1,22 @@ +[server] +http_addr = 0.0.0.0 +http_port = 3000 +domain = {{ grafana_domain }} +root_url = https://{{ grafana_domain }}/ +serve_from_sub_path = false + +[security] +admin_user = {{ grafana_admin_user }} +admin_password = {{ grafana_admin_password }} + +[auth] +disable_login_form = false +disable_signout_menu = false + +[users] +allow_sign_up = false + +[plugins] +enable_alpha = {{ grafana_plugins_enable_alpha | bool | lower }} +app_tls_skip_verify_insecure = {{ grafana_plugins_app_tls_skip_verify_insecure | bool | lower }} +allow_loading_unsigned_plugins = {{ grafana_allow_loading_unsigned_plugins | join(',') }}