diff --git a/charts/gitops-runtime/templates/_components/cap-app-proxy/_deployment.yaml b/charts/gitops-runtime/templates/_components/cap-app-proxy/_deployment.yaml index e00a55bb2..74bf68dbc 100644 --- a/charts/gitops-runtime/templates/_components/cap-app-proxy/_deployment.yaml +++ b/charts/gitops-runtime/templates/_components/cap-app-proxy/_deployment.yaml @@ -3,6 +3,8 @@ apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "cap-app-proxy.fullname" . }} + annotations: + argocd.argoproj.io/sync-options: Delete=false labels: {{- include "cap-app-proxy.labels" . | nindent 4 }} spec: diff --git a/charts/gitops-runtime/templates/hooks/pre-uninstall/cleanup-resources.yaml b/charts/gitops-runtime/templates/hooks/pre-uninstall/cleanup-resources.yaml index ecd385a87..ee1bb7f06 100644 --- a/charts/gitops-runtime/templates/hooks/pre-uninstall/cleanup-resources.yaml +++ b/charts/gitops-runtime/templates/hooks/pre-uninstall/cleanup-resources.yaml @@ -5,7 +5,7 @@ metadata: annotations: helm.sh/hook: pre-delete helm.sh/hook-weight: "5" - helm.sh/hook-delete-policy: hook-succeeded,before-hook-creation + helm.sh/hook-delete-policy: before-hook-creation spec: backoffLimit: 3 template: @@ -20,10 +20,22 @@ spec: command: ["sh", "-c"] args: - | - kubectl patch EventBus $(kubectl get eventbus -l codefresh.io/internal=true | awk 'NR>1{print $1}' | xargs) -p '{"metadata":{"finalizers":null}}' --type=merge && \ - kubectl patch Eventsource $(kubectl get EventSource -l codefresh.io/internal=true | awk 'NR>1{print $1}' | xargs) -p '{"metadata":{"finalizers":null}}' --type=merge && \ - kubectl patch Sensor $(kubectl get Sensor -l codefresh.io/internal=true | awk 'NR>1{print $1}' | xargs) -p '{"metadata":{"finalizers":null}}' --type=merge ; - return 0 + set -e + + echo "[cleanup] Namespace: {{ .Release.Namespace }}" + + echo "[cleanup] Patching internal Argo CD Applications finalizers..." + kubectl get applications -n {{ .Release.Namespace }} -l codefresh.io/internal=true -o jsonpath='{.items[*].metadata.name}' \ + | xargs -r -n1 -I{} sh -c 'echo "[cleanup] Patching application: {}"; kubectl patch application -n {{ .Release.Namespace }} {} -p '\''{"metadata":{"finalizers":null}}'\'' --type=merge' \ + || echo "[cleanup] Failed to patch applications (see errors above)" + + echo "[cleanup] Deleting codefresh-token secret..." + kubectl delete secret codefresh-token -n {{ .Release.Namespace }} --ignore-not-found \ + || echo "[cleanup] Failed to delete codefresh-token (see errors above)" + + echo "[cleanup] Deleting default git integration secrets..." + kubectl delete secret -n {{ .Release.Namespace }} -l 'io.codefresh.integration-type=git,io.codefresh.integration-name=default' --ignore-not-found \ + || echo "[cleanup] Failed to delete default git integration secrets (see errors above)" {{- with .Values.installer.nodeSelector | default .Values.global.nodeSelector }} nodeSelector: {{ toYaml . | nindent 8 }} {{- end }} diff --git a/charts/gitops-runtime/values.yaml b/charts/gitops-runtime/values.yaml index 22ff23e99..405b871b5 100644 --- a/charts/gitops-runtime/values.yaml +++ b/charts/gitops-runtime/values.yaml @@ -290,6 +290,9 @@ argo-cd: params: server.insecure: true application.namespaces: 'cf-*' + controller: + statefulsetAnnotations: + argocd.argoproj.io/sync-options: "Delete=false" #----------------------------------------------------------------------------------------------------------------------- # Argo Events #-----------------------------------------------------------------------------------------------------------------------