cleaning up helm-charts in post-actions JF

Change-Id: I473feb4c35901783731d0082dc7e2733ec8af8b9
diff --git a/Jenkinsfile-postactions b/Jenkinsfile-postactions
index 0f45839..2922b5b 100644
--- a/Jenkinsfile-postactions
+++ b/Jenkinsfile-postactions
@@ -19,6 +19,36 @@
             sh returnStdout: true, script: "git clone -b ${branch} ${cordRepoUrl}/${configBaseDir}"
             deployment_config = readYaml file: "${configBaseDir}/${configDeploymentDir}/${configFileName}.yml"
         }
+        stage('Clean up') {
+            timeout(10) {
+                sh returnStdout: true, script: """
+                export KUBECONFIG=$WORKSPACE/${configBaseDir}/${configKubernetesDir}/${configFileName}.conf
+                for hchart in \$(helm list -q | grep -E -v 'docker-registry|mavenrepo|ponnet');
+                do
+                    echo "Purging chart: \${hchart}"
+                    helm delete --purge "\${hchart}"
+                done
+                """
+                timeout(5) {
+                    waitUntil {
+                        helm_deleted = sh returnStdout: true, script: """
+                        export KUBECONFIG=$WORKSPACE/${configBaseDir}/${configKubernetesDir}/${configFileName}.conf &&
+                        helm ls -q | grep -E -v 'docker-registry|mavenrepo|ponnet' | wc -l
+                        """
+                        return helm_deleted.toInteger() == 0
+                    }
+                }
+                timeout(5) {
+                    waitUntil {
+                        kubectl_deleted = sh returnStdout: true, script: """
+                        export KUBECONFIG=$WORKSPACE/${configBaseDir}/${configKubernetesDir}/${configFileName}.conf &&
+                        kubectl get pods --all-namespaces --no-headers | grep -E -v 'kube-system|docker-registry|mavenrepo|ponnet' | wc -l
+                        """
+                        return kubectl_deleted.toInteger() == 0
+                    }
+                }
+            }
+        }
         stage('Restart Fabric Switch processes') {
             for(int i=0; i < deployment_config.fabric_switches.size(); i++) {
                 timeout(5) {