|
23 | 23 | # SOFTWARE.
|
24 | 24 |
|
25 | 25 | - become: false
|
| 26 | + delegate_to: localhost |
26 | 27 | block:
|
27 | 28 | - name: Create local grafana dashboard directory
|
28 | 29 | file:
|
|
108 | 109 | when:
|
109 | 110 | - grafana_dashboards | length > 0
|
110 | 111 |
|
111 |
| -# Templating partial manifests and then adding the dashboard's data server-side because the k8s module doesn't like Jinja2 |
112 |
| -- name: Create partial configmaps for server-side templating |
113 |
| - ansible.builtin.template: |
114 |
| - src: configmap-template.yml.j2 |
115 |
| - dest: "{{ _tmp_dashboards.path }}/{{ item_filename }}.yml" |
116 |
| - loop: "{{ grafana_dashboards }}" |
117 |
| - vars: |
118 |
| - item_filename: "{{ ((item.dashboard_id | string) + '.json') if 'dashboard_id' in item else item.dashboard_file }}" |
119 |
| - |
120 |
| -- name: Setting data keys |
121 |
| - ansible.builtin.replace: |
122 |
| - path: "{{ _tmp_dashboards.path }}/{{ item_filename }}.yml" |
123 |
| - regexp: 'PLACEHOLDER' |
124 |
| - replace: "{{ item_filename }}" |
125 |
| - loop: "{{ grafana_dashboards }}" |
126 |
| - vars: |
127 |
| - item_filename: "{{ ((item.dashboard_id | string) + '.json') if 'dashboard_id' in item else item.dashboard_file }}" |
128 |
| - |
129 |
| -- name: Appending json data to configmaps |
130 |
| - ansible.builtin.shell: |
131 |
| - cmd: "sed 's/^/ /' {{ item_path }} >> {{ item_path }}.yml" |
132 |
| - loop: "{{ grafana_dashboards }}" |
133 |
| - vars: |
134 |
| - item_filename: "{{ ((item.dashboard_id | string) + '.json') if 'dashboard_id' in item else item.dashboard_file }}" |
135 |
| - item_path: "{{ _tmp_dashboards.path }}/{{ item_filename }}" |
136 |
| - |
137 |
| -- name: Applying dashboard configmaps |
| 112 | +- name: Template configmaps from dashboards |
138 | 113 | ansible.builtin.k8s:
|
139 |
| - src: "{{ item_path }}.yml" |
| 114 | + definition: |
| 115 | + "{{ lookup('ansible.builtin.template', 'configmap-template.yml.j2') | from_yaml }}" |
140 | 116 | loop: "{{ grafana_dashboards }}"
|
141 | 117 | vars:
|
142 | 118 | item_filename: "{{ ((item.dashboard_id | string) + '.json') if 'dashboard_id' in item else item.dashboard_file }}"
|
|
0 commit comments