Allow passing any values to override.yaml 91/83191/9
authorMichal Zegan <m.zegan@samsung.com>
Mon, 25 Mar 2019 12:13:00 +0000 (13:13 +0100)
committerMichal Ptacek <m.ptacek@partner.samsung.com>
Mon, 1 Apr 2019 14:01:16 +0000 (14:01 +0000)
This change allows passing any values that will then
be stored to override.yaml.
These values are passed from the "overrides" key, that
may be set either as an extra variable or in inventory/group_vars.
The root certificate is merged with the overrides dictionary before
saving the file.

Change-Id: I772c342b3c9eafe1849d1678b810319afaaf75bf
Issue-ID: OOM-1752
Signed-off-by: Michal Zegan <m.zegan@samsung.com>
ansible/roles/application-override/tasks/main.yml

index 84896fb..1ecf7c7 100644 (file)
@@ -6,11 +6,11 @@
   register: root_cert
   delegate_to: localhost
 
-# WA: this is required because deploy plugin dont process params properly
-- name: Create override file with global.cacert
+- name: "Set root ca certificate"
+  set_fact:
+    merged_overrides: "{{ overrides | default({}) | combine({'global': {'cacert': root_cert.content | b64decode}}, recursive=True) }}"
+
+- name: "Create {{ app_helm_override_file }}"
   copy:
     dest: "{{ app_helm_override_file }}"
-    content: |
-      global:
-        cacert: |
-          {{ root_cert['content'] | b64decode | indent( width=4, indentfirst=False) }}
+    content: "{{ merged_overrides | to_nice_yaml }}"