mirror of
https://github.com/YuzuZensai/netbird-kubernetes-operator.git
synced 2026-09-13 10:49:15 +00:00
Refactor uninstallation process (#74)
Docs PR: https://github.com/netbirdio/docs/pull/457 Changes: * Split kubernetes-operator Chart to operator only chart (kubernetes-operator) and configuration chart (netbird-operator-config) * Remove delete validation webhooks for non-needed resources * Allow abandoning Groups when still linked to a resource for over a minute after deletion * Fix duplciate Network Resource retrying heavily * Fix SetupKey creation duplication * Skip deleting routing peer since deleting network automatically deletes it anyway
This commit is contained in:
@@ -1,69 +1,41 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: {{ include "kubernetes-operator.fullname" . }}-delete-routers
|
||||
labels:
|
||||
app.kubernetes.io/component: operator
|
||||
{{- include "kubernetes-operator.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
helm.sh/hook: pre-delete
|
||||
helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded
|
||||
spec:
|
||||
backoffLimit: 3
|
||||
template:
|
||||
metadata:
|
||||
name: {{ include "kubernetes-operator.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/component: operator
|
||||
{{- include "kubernetes-operator.labels" . | nindent 8 }}
|
||||
{{- with .Values.operator.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
containers:
|
||||
- name: pre-delete
|
||||
image: "bitnami/kubectl:latest"
|
||||
args:
|
||||
- delete
|
||||
- --all
|
||||
- -A
|
||||
- --cascade=foreground
|
||||
- --ignore-not-found
|
||||
- NBRoutingPeer
|
||||
serviceAccountName: {{ include "kubernetes-operator.serviceAccountName" . }}
|
||||
restartPolicy: Never
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: {{ include "kubernetes-operator.fullname" . }}-delete-policies
|
||||
labels:
|
||||
app.kubernetes.io/component: operator
|
||||
{{- include "kubernetes-operator.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
helm.sh/hook: pre-delete
|
||||
helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded
|
||||
spec:
|
||||
backoffLimit: 3
|
||||
template:
|
||||
metadata:
|
||||
name: {{ include "kubernetes-operator.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/component: operator
|
||||
{{- include "kubernetes-operator.labels" . | nindent 8 }}
|
||||
{{- with .Values.operator.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
containers:
|
||||
- name: pre-delete
|
||||
image: "bitnami/kubectl:latest"
|
||||
args:
|
||||
- delete
|
||||
- --all
|
||||
- --cascade=foreground
|
||||
- --ignore-not-found
|
||||
- NBPolicy
|
||||
serviceAccountName: {{ include "kubernetes-operator.serviceAccountName" . }}
|
||||
restartPolicy: Never
|
||||
---
|
||||
{{/*apiVersion: batch/v1*/}}
|
||||
{{/*kind: Job*/}}
|
||||
{{/*metadata:*/}}
|
||||
{{/* name: {{ include "kubernetes-operator.fullname" . }}-delete-router-deployments*/}}
|
||||
{{/* labels:*/}}
|
||||
{{/* app.kubernetes.io/component: operator*/}}
|
||||
{{/* {{- include "kubernetes-operator.labels" . | nindent 4 }}*/}}
|
||||
{{/* annotations:*/}}
|
||||
{{/* helm.sh/hook: pre-delete*/}}
|
||||
{{/* helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded*/}}
|
||||
{{/*spec:*/}}
|
||||
{{/* backoffLimit: 3*/}}
|
||||
{{/* template:*/}}
|
||||
{{/* metadata:*/}}
|
||||
{{/* name: {{ include "kubernetes-operator.fullname" . }}*/}}
|
||||
{{/* labels:*/}}
|
||||
{{/* app.kubernetes.io/component: operator*/}}
|
||||
{{/* {{- include "kubernetes-operator.labels" . | nindent 8 }}*/}}
|
||||
{{/* {{- with .Values.operator.podLabels }}*/}}
|
||||
{{/* {{- toYaml . | nindent 8 }}*/}}
|
||||
{{/* {{- end }}*/}}
|
||||
{{/* spec:*/}}
|
||||
{{/* containers:*/}}
|
||||
{{/* - name: pre-delete*/}}
|
||||
{{/* image: "netbirdio/kubectl:latest"*/}}
|
||||
{{/* imagePullPolicy: {{ .Values.operator.image.pullPolicy }}*/}}
|
||||
{{/* command:*/}}
|
||||
{{/* - sh*/}}
|
||||
{{/* - -c*/}}
|
||||
{{/* args:*/}}
|
||||
{{/* - kubectl get NBRoutingPeer -A --no-headers -o custom-columns=NAMESPACE:.metadata.namespace,NAME:.metadata.name | while read "L"; do kubectl patch --type=json -p '[{"op":"replace","path":"/spec/disableDeployment","value":true}]' NBRoutingPeer -n $(echo "$L" | awk '{print $1}') $(echo "$L" | awk '{print $2}'); done*/}}
|
||||
{{/* - name: delete-wait*/}}
|
||||
{{/* image: "netbirdio/kubectl:latest"*/}}
|
||||
{{/* imagePullPolicy: {{ .Values.operator.image.pullPolicy }}*/}}
|
||||
{{/* command:*/}}
|
||||
{{/* - sh*/}}
|
||||
{{/* - -c*/}}
|
||||
{{/* args:*/}}
|
||||
{{/* - kubectl get NBRoutingPeer -A --no-headers -o custom-columns=NAMESPACE:.metadata.namespace,NAME:.metadata.name | while read "L"; do kubectl wait --for=delete deployment -n $(echo "$L" | awk '{print $1}') $(echo "$L" | awk '{print $2}'); done*/}}
|
||||
{{/* serviceAccountName: {{ include "kubernetes-operator.serviceAccountName" . }}*/}}
|
||||
{{/* restartPolicy: Never*/}}
|
||||
|
||||
Reference in New Issue
Block a user