Fix grafana data source registration
Make data source creation more dynamic to support a variable number of data source of different types Only create data sources actually deployed by kolla Change-Id: I26a2d3c71b178562b906623ab77eaff673c81dce
This commit is contained in:
parent
ffc4fb3793
commit
b7aef07d28
@ -23,16 +23,17 @@ grafana_database_address: "{{ kolla_internal_fqdn }}:{{ database_port }}"
|
||||
####################
|
||||
# Datasource
|
||||
####################
|
||||
grafana_data_source:
|
||||
isDefault: yes
|
||||
database: "telegraf"
|
||||
user: admin
|
||||
password: "{{ grafana_admin_password }}"
|
||||
name: "telegraf"
|
||||
type: "influxdb"
|
||||
url: "{{ internal_protocol }}://{{ api_interface_address }}:{{ influxdb_http_port }}"
|
||||
access: "proxy"
|
||||
basicAuth: false
|
||||
grafana_data_sources:
|
||||
influxdb:
|
||||
enabled: "{{ enable_influxdb | bool }}"
|
||||
data:
|
||||
isDefault: yes
|
||||
database: "telegraf"
|
||||
name: "telegraf"
|
||||
type: "influxdb"
|
||||
url: "{{ internal_protocol }}://{{ api_interface_address }}:{{ influxdb_http_port }}"
|
||||
access: "proxy"
|
||||
basicAuth: false
|
||||
|
||||
##########
|
||||
# Grafana
|
||||
|
@ -10,20 +10,21 @@
|
||||
run_once: true
|
||||
connection: local
|
||||
|
||||
- name: Enable influxdb datasource
|
||||
- name: Enable grafana datasources
|
||||
uri:
|
||||
url: "{{ internal_protocol }}://{{ kolla_internal_vip_address }}:{{ grafana_server_port }}/api/datasources"
|
||||
method: POST
|
||||
user: admin
|
||||
password: "{{ grafana_admin_password }}"
|
||||
body: "{{ grafana_data_source | to_json }}"
|
||||
body: "{{ item.value.data | to_json }}"
|
||||
body_format: json
|
||||
force_basic_auth: yes
|
||||
status_code: 200, 409
|
||||
register: response
|
||||
run_once: True
|
||||
connection: local
|
||||
when: grafana_data_source is defined
|
||||
changed_when: response.status == 200
|
||||
failed_when: response.status not in [200, 409] or
|
||||
response.status == 409 and ("Data source with same name already exists" not in response.json.message|default(""))
|
||||
with_dict: "{{ grafana_data_sources }}"
|
||||
when: item.value.enabled | bool
|
||||
|
Loading…
Reference in New Issue
Block a user