diff --git a/README.md b/README.md index 7ef275c..6e6f9a0 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,14 @@ Install and configure Grafana url: https://github.com/sensu/grafana-sensu-go-datasource/releases/download/1.0.2/sensu-sensugo-datasource-1.0.2.zip ``` +- `grafana_proxy_url` - set an URL proxy for outbound http and https requests +- `grafana_proxy_ignore` - array with subnets or hosts to ignore + +``` + - localhost + - 10.0.0.0/8 +``` + ## How to use ``` diff --git a/defaults/main.yml b/defaults/main.yml index a9e2df8..2d63a10 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -2,3 +2,4 @@ grafana_config: {} grafana_ldap_config: {} grafana_plugins: [] +grafana_proxy_ignore: [] diff --git a/molecule/default/tests/test_default.py b/molecule/default/tests/test_default.py index dbad8f0..bfc1896 100644 --- a/molecule/default/tests/test_default.py +++ b/molecule/default/tests/test_default.py @@ -16,6 +16,15 @@ def test_config_file(host): assert path.contains('[security]') assert path.contains('admin_user = "sysadmin"') +def test_default_config_file(host): + path = host.file('/etc/default/grafana-server') + assert path.exists + assert path.is_file + assert path.user == 'root' + assert path.group == 'root' + assert path.mode == 0o644 + assert path.contains('LOG_DIR=/var/log/grafana') + def test_ldap_config_file(host): path = host.file('/etc/grafana/ldap.toml') assert path.exists diff --git a/tasks/main.yml b/tasks/main.yml index d317570..f144acd 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -32,6 +32,16 @@ until: result is succeeded tags: grafana +- name: copy default environment variables file + ansible.builtin.template: + src: default.j2 + dest: /etc/default/grafana-server + owner: root + group: root + mode: 0644 + notify: restart grafana + tags: grafana + - name: copy configuration file ansible.builtin.template: src: grafana.ini.j2 diff --git a/templates/default.j2 b/templates/default.j2 new file mode 100644 index 0000000..14cbcaa --- /dev/null +++ b/templates/default.j2 @@ -0,0 +1,18 @@ +# {{ ansible_managed }} + +GRAFANA_HOME=/usr/share/grafana +LOG_DIR=/var/log/grafana +DATA_DIR=/var/lib/grafana +MAX_OPEN_FILES=10000 +CONF_DIR=/etc/grafana +CONF_FILE=/etc/grafana/grafana.ini +RESTART_ON_UPGRADE=true +PLUGINS_DIR=/var/lib/grafana/plugins +PROVISIONING_CFG_DIR=/etc/grafana/provisioning +PID_FILE_DIR=/run/grafana +{% if grafana_proxy_url is defined %} + +https_proxy={{ grafana_proxy_url }} +http_proxy={{ grafana_proxy_url }} +no_proxy={{ grafana_proxy_ignore|join(',') }} +{% endif %}