73 lines
2.1 KiB
YAML
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 }}
|