+
+__kube_delete_all_pv() {
+ echo " Delete pv ..."
+ resources="pv"
+ for restype in $resources; do
+ result=$(kubectl get $restype -o jsonpath='{.items[?(@.metadata.labels.autotest)].metadata.name}')
+ if [ $? -eq 0 ] && [ ! -z "$result" ]; then
+ for resid in $result; do
+ echo " Deleting $restype $resid with label autotest "
+ kubectl delete --grace-period=1 $restype $resid 1> /dev/null 2> /dev/null
+ done
+ fi
+ done
+}
+
+__kube_wait_for_delete() {
+ echo " Wait for delete in namespace $1 ..."
+ namespace=$1
+ resources="deployments replicaset statefulset services pods configmaps pvc "
+ for restype in $resources; do
+ result=$(kubectl get $restype -n $namespace -o jsonpath='{.items[?(@.metadata.labels.autotest)].metadata.name}')
+ if [ $? -eq 0 ] && [ ! -z "$result" ]; then
+ for resid in $result; do
+ echo " Deleting $restype $resid in namespace $namespace with label autotest "
+ kubectl delete --grace-period=1 $restype $resid -n $namespace #1> /dev/null 2> /dev/null
+ echo -ne " Waiting for $restype $resid in namespace $namespace with label autotest to be deleted..."$SAMELINE
+ T_START=$SECONDS
+ result="dummy"
+ while [ ! -z "$result" ]; do
+ sleep 0.5
+ result=$(kubectl get $restype -n $namespace -o jsonpath='{.items[?(@.metadata.labels.autotest)].metadata.name}')
+ echo -ne " Waiting for $restype $resid in namespace $namespace with label autotest to be deleted...$(($SECONDS-$T_START)) seconds "$SAMELINE
+ if [ -z "$result" ]; then
+ echo -e " Waiting for $restype $resid in namespace $namespace with label autotest to be deleted...$(($SECONDS-$T_START)) seconds $GREEN OK $EGREEN"
+ elif [ $(($SECONDS-$T_START)) -gt 300 ]; then
+ echo -e " Waiting for $restype $resid in namespace $namespace with label autotest to be deleted...$(($SECONDS-$T_START)) seconds $RED Failed $ERED"
+ result=""
+ fi
+ done
+ done
+ fi
+ done
+}
+
+__kube_wait_for_delete_pv() {
+ echo " Wait for delete pv ..."
+ resources="pv "
+ for restype in $resources; do
+ result=$(kubectl get $restype -o jsonpath='{.items[?(@.metadata.labels.autotest)].metadata.name}')
+ if [ $? -eq 0 ] && [ ! -z "$result" ]; then
+ for resid in $result; do
+ echo " Deleting $restype $resid with label autotest "
+ kubectl delete --grace-period=1 $restype $resid -n $namespace #1> /dev/null 2> /dev/null
+ echo -ne " Waiting for $restype $resid with label autotest to be deleted..."$SAMELINE
+ T_START=$SECONDS
+ result="dummy"
+ while [ ! -z "$result" ]; do
+ sleep 0.5
+ result=$(kubectl get $restype -n $namespace -o jsonpath='{.items[?(@.metadata.labels.autotest)].metadata.name}')
+ echo -ne " Waiting for $restype $resid with label autotest to be deleted...$(($SECONDS-$T_START)) seconds "$SAMELINE
+ if [ -z "$result" ]; then
+ echo -e " Waiting for $restype $resid with label autotest to be deleted...$(($SECONDS-$T_START)) seconds $GREEN OK $EGREEN"
+ elif [ $(($SECONDS-$T_START)) -gt 300 ]; then
+ echo -e " Waiting for $restype $resid with label autotest to be deleted...$(($SECONDS-$T_START)) seconds $RED Failed $ERED"
+ result=""
+ fi
+ done
+ done
+ fi
+ done
+}
+
+