diff options
author | Rémy Coutable <remy@rymai.me> | 2018-11-12 18:07:22 +0100 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-11-13 18:01:46 +0100 |
commit | 4383c7947ec5a3da476be5d2b0c5b0ffc4ba019f (patch) | |
tree | 899f7707c0fe5f43e9583232bd331bce9e68725c | |
parent | 314bb5d1cfe0429aeeb4ca1771097c6831f95498 (diff) | |
download | gitlab-ce-4383c7947ec5a3da476be5d2b0c5b0ffc4ba019f.tar.gz |
Ensure we abort the cleanup if release is empty
Signed-off-by: Rémy Coutable <remy@rymai.me>
-rwxr-xr-x | scripts/review_apps/review-apps.sh | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/scripts/review_apps/review-apps.sh b/scripts/review_apps/review-apps.sh index b180860899a..00e23f12bc0 100755 --- a/scripts/review_apps/review-apps.sh +++ b/scripts/review_apps/review-apps.sh @@ -179,21 +179,35 @@ function delete() { track="${1-stable}" name="$CI_ENVIRONMENT_SLUG" + if [ -z "$CI_ENVIRONMENT_SLUG" ]; then + echo "No release given, aborting the delete!" + return + fi + if [[ "$track" != "stable" ]]; then name="$name-$track" fi + if ! deployExists "${KUBE_NAMESPACE}" "${name}"; then + echo "The release $name doesn't exist, aborting the cleanup!" + return + fi + echo "Deleting release '$name'..." helm delete --purge "$name" || true } function cleanup() { - echo "Cleaning up $CI_ENVIRONMENT_SLUG..." - kubectl -n "$KUBE_NAMESPACE" get ingress,svc,pdb,hpa,deploy,statefulset,job,pod,secret,configmap,pvc,secret,clusterrole,clusterrolebinding,role,rolebinding,sa 2>&1 \ - | grep "$CI_ENVIRONMENT_SLUG" \ - | awk '{print $1}' \ - | xargs kubectl -n "$KUBE_NAMESPACE" delete \ - || true + if [ -z "$CI_ENVIRONMENT_SLUG" ]; then + echo "No release given, aborting the delete!" + return + fi + + echo "Cleaning up '$CI_ENVIRONMENT_SLUG'..." + kubectl -n "$KUBE_NAMESPACE" delete \ + ingress,svc,pdb,hpa,deploy,statefulset,job,pod,secret,configmap,pvc,secret,clusterrole,clusterrolebinding,role,rolebinding,sa \ + -l release="$CI_ENVIRONMENT_SLUG" \ + || true } function install_external_dns() { |