Dont crash patching on missing chart file 87/79387/1
authorMichal Ptacek <m.ptacek@partner.samsung.com>
Thu, 28 Feb 2019 17:43:49 +0000 (17:43 +0000)
committerMichal Ptacek <m.ptacek@partner.samsung.com>
Thu, 28 Feb 2019 17:46:17 +0000 (17:46 +0000)
In some deployments not all chart files might be present.
We should not fail if some components are not deployed.

Issue-ID: OOM-1691

Change-Id: I6a0ae05e753a2de6301ee0188022a958868776ad
Signed-off-by: Michal Ptacek <m.ptacek@partner.samsung.com>
patches/onap-casablanca-patch-role/tasks/main.yml

index d3b92e5..00ee457 100644 (file)
@@ -1,34 +1,48 @@
 ---
 # This role contains patching logic for OOM charts
 # and is valid until OOM-1610 is implemented
+- name: Check presence of files for NPM patching
+  stat:
+    path: "{{ app_helm_charts_infra_directory }}/{{ item }}"
+  with_items:
+    - common/dgbuilder/templates/deployment.yaml
+    - sdnc/charts/sdnc-portal/templates/deployment.yaml
+  register: npm_files_check
+
+- name: Check presence of dcae cloudify deployment chart file
+  stat:
+    path: "{{ app_helm_charts_infra_directory }}/{{ item }}"
+  with_items:
+    - dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
+  register: dcae_files_check
+
 - name: Patch OOM - nexus domain resolving
   lineinfile:
-    path: "{{ app_helm_charts_infra_directory }}/{{ item }}"
+    path: "{{ item.stat.path }}"
     regexp: '^(.*)HOSTS_FILE_RECORD'
     line: '\g<1>{{ cluster_ip }} {{ simulated_hosts.nexus | join(" ") }} >> /etc/hosts;'
     backrefs: yes
     state: present
-  with_items:
-    - common/dgbuilder/templates/deployment.yaml
-    - sdnc/charts/sdnc-portal/templates/deployment.yaml
+  with_items: "{{ npm_files_check.results }}"
+  when: item.stat.exists
 
 - name: Patch OOM - set npm registry
   lineinfile:
-    path: "{{ app_helm_charts_infra_directory }}/{{ item }}"
+    path: "{{ item.stat.path }}"
     regexp: '^(.*)NPM_REGISTRY_RECORD'
     line: '\g<1>npm set registry "http://nexus.{{ ansible_nodename }}/repository/npm-private/";'
     backrefs: yes
     state: present
-  with_items:
-    - common/dgbuilder/templates/deployment.yaml
-    - sdnc/charts/sdnc-portal/templates/deployment.yaml
+  with_items: "{{ npm_files_check.results }}"
+  when: item.stat.exists
 
 - name: Patch OOM - set cert path for cloudify
   lineinfile:
-    path: "{{ app_helm_charts_infra_directory }}/{{ item }}"
+    path: "{{ item.stat.path }}"
     regexp: '^(.*)CERT_PATH'
     line: '\g<1>/etc/pki/ca-trust/source/anchors'
     backrefs: yes
     state: present
-  with_items:
-    - dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
+  with_items: "{{ dcae_files_check.results }}"
+  when: item.stat.exists
+