From 3e8f30bb5fe272977ce1ba96596d0755405de3f8 Mon Sep 17 00:00:00 2001
From: S M Y <smy.altamash@gmail.com>
Date: Thu, 22 Aug 2019 11:30:43 +0530
Subject: [PATCH] Offline installer build scripts clearning

---
 ansible/roles/offline-installer/tasks/main.yml   |  7 +++----
 ansible/roles/offline-installer/tasks/remove.yml |  4 ++++
 pipelines/offlineinstaller/Jenkinsfile           | 15 +++++++++++++++
 3 files changed, 22 insertions(+), 4 deletions(-)
 create mode 100644 ansible/roles/offline-installer/tasks/remove.yml

diff --git a/ansible/roles/offline-installer/tasks/main.yml b/ansible/roles/offline-installer/tasks/main.yml
index 892ad8885..cc64c39b2 100644
--- a/ansible/roles/offline-installer/tasks/main.yml
+++ b/ansible/roles/offline-installer/tasks/main.yml
@@ -30,7 +30,6 @@
   include: uploadToAzure.yml
   when: uploadInstaller is defined
 
-- name: Delete offline installer repo
-  file:
-    path: "{{offline_repo_location}}/offline-installer-repo/"
-    state: absent
+- name: Delete offline installer folder if any issue
+  include: remove.yml
+  when: removeOfflineInstallerFolder is defined
diff --git a/ansible/roles/offline-installer/tasks/remove.yml b/ansible/roles/offline-installer/tasks/remove.yml
new file mode 100644
index 000000000..22473f1dc
--- /dev/null
+++ b/ansible/roles/offline-installer/tasks/remove.yml
@@ -0,0 +1,4 @@
+- name: Delete offline installer repo
+  file:
+    path: "{{offline_repo_location}}/offline-installer-repo/"
+    state: absent
diff --git a/pipelines/offlineinstaller/Jenkinsfile b/pipelines/offlineinstaller/Jenkinsfile
index f366f98b8..faee11713 100644
--- a/pipelines/offlineinstaller/Jenkinsfile
+++ b/pipelines/offlineinstaller/Jenkinsfile
@@ -34,6 +34,7 @@ node() {
                     	println values
                     	ansible_playbook_run(values)
                 }
+		try {
 		     stage('Build, create and upload installer to azure') {
 			dir('offline-installer-repo') {
 				sh """
@@ -52,6 +53,20 @@ node() {
                         println values
                         ansible_playbook_run(values)
 		}
+		}
+		catch (err) {
+			values = [:]
+                        ansiblePlaybook = "${currentWs}/ansible/offline-installer.yml --vault-password-file /var/lib/jenkins/secrets/vault-pass "
+                        ansibleExtraArgs = " --extra-vars \"offline_repo_location=$currentWs removeOfflineInstallerFolder=True \""
+                        values.put('currentWs', currentWs)
+                        values.put('env', envDir)
+                        values.put('module', module)
+                        values.put('jobName', jobName)
+                        values.put('ansiblePlaybook', ansiblePlaybook)
+                        values.put('ansibleExtraArgs', ansibleExtraArgs)
+                        println values
+                        ansible_playbook_run(values)
+		}
             }
     }
     catch (err) {
-- 
GitLab