From e7da510cd69fe6607d1ebd8f773c1cf672e5debe Mon Sep 17 00:00:00 2001
From: Doug Szumski <doug@stackhpc.com>
Date: Tue, 20 Mar 2018 15:02:34 +0000
Subject: [PATCH] Support custom config for InfluxDB

The InfluxDB config file is an exotic format containing nested
sections, for example  ```[[foo]]```, and doesn't work with
merge_configs. To support customising the config this patch adds
support for overriding at the file level.

Change-Id: I05b18c43c3a18e9b46dc450565bc1e156b4ff9dd
Closes-Bug: #1757186
Partially-Implements: blueprint monasca-roles
---
 ansible/roles/influxdb/tasks/config.yml | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/ansible/roles/influxdb/tasks/config.yml b/ansible/roles/influxdb/tasks/config.yml
index 98153f5627..111954bd3b 100644
--- a/ansible/roles/influxdb/tasks/config.yml
+++ b/ansible/roles/influxdb/tasks/config.yml
@@ -30,7 +30,7 @@
   vars:
     service: "{{ influxdb_services['influxdb']}}"
   template:
-    src: "{{ role_path }}/templates/{{ item }}.conf.j2"
+    src: "{{ item }}"
     dest: "{{ node_config_directory }}/influxdb/influxdb.conf"
     mode: "0660"
   become: true
@@ -38,8 +38,10 @@
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
-  with_items:
-    - "influxdb"
+  with_first_found:
+    - "{{ node_custom_config }}/influxdb/{{ inventory_hostname }}/influxdb.conf"
+    - "{{ node_custom_config }}/influxdb.conf"
+    - "influxdb.conf.j2"
   notify:
     - Restart influxdb container