rook-ceph/stx-rook-ceph/stx-rook-ceph/helm-charts/rook-ceph/templates/pre-delete-rook-ceph-cleanu...

73 lines
2.1 KiB
YAML

{{/*
#
# Copyright (c) 2020 Intel Corporation, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
*/}}
{{- if .Values.hook.cleanup.enable }}
{{ $root := . }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: config-rook-ceph-cleanup
namespace: {{ $root.Release.Namespace }}
data:
rook_clean_up.sh: |-
#!/bin/bash
kubectl delete deployment -n ${NAMESPACE} --selector="app=rook-ceph-osd"
kubectl delete deployment -n ${NAMESPACE} --selector="app=rook-ceph-mgr"
kubectl delete deployment -n ${NAMESPACE} csi-cephfsplugin-provisioner
kubectl delete deployment -n ${NAMESPACE} csi-rbdplugin-provisioner
kubectl delete daemonsets.apps -n kube-system csi-cephfsplugin
kubectl delete daemonsets.apps -n kube-system csi-rbdplugin
kubectl delete configmap -n ${NAMESPACE} rook-ceph-csi-config
echo "rook ceph cluster cleanup"
---
apiVersion: batch/v1
kind: Job
metadata:
name: rook-ceph-cleanup
namespace: {{ $root.Release.Namespace }}
labels:
heritage: {{$root.Release.Service | quote }}
release: {{$root.Release.Name | quote }}
chart: "{{$root.Chart.Name}}-{{$root.Chart.Version}}"
annotations:
"helm.sh/hook": "pre-delete"
"helm.sh/hook-delete-policy": "before-hook-creation,hook-succeeded"
spec:
template:
metadata:
name: rook-ceph-cleanup
namespace: {{ $root.Release.Namespace }}
labels:
heritage: {{$root.Release.Service | quote }}
release: {{$root.Release.Name | quote }}
chart: "{{$root.Chart.Name}}-{{$root.Chart.Version}}"
spec:
restartPolicy: OnFailure
serviceAccountName: {{ $root.Values.hook.cleanup.rbac.serviceAccount }}
volumes:
- name: config-rook-ceph-cleanup
configMap:
name: config-rook-ceph-cleanup
containers:
- name: rook-cleanup
image: {{ .Values.hook.image }}
command: [ "/bin/bash", "/tmp/mount/rook_clean_up.sh" ]
env:
- name: NAMESPACE
value: {{ $root.Release.Namespace }}
volumeMounts:
- name: config-rook-ceph-cleanup
mountPath: /tmp/mount
{{- end }}