Add a cleanup script

This commit is contained in:
2024-04-02 18:18:41 +02:00
parent 12516d82fb
commit d20f6904cb
2 changed files with 46 additions and 6 deletions

24
hooks/down.sh Normal file → Executable file
View File

@ -1,15 +1,27 @@
#!/usr/bin/env bash
if [[ $1 == "--config" ]] ; then
cat <<EOF
configVersion: v1
kubernetes:
- apiVersion: v1
kind: Pod
executeHookOnEvent: ["Added"]
- name: Watch softplayer configmaps
apiVersion: v1
kind: ConfigMap
executeHookOnEvent: ["Deleted"]
labelSelector:
matchExpressions:
- key: "component"
operator: "In"
values: ["bootstrap"]
EOF
else
podName=$(jq -r .[0].object.metadata.name $BINDING_CONTEXT_PATH)
echo "Pod '${podName}' added"
PROVIDER=$(jq -r .[0].objects.[0].object.data.provider $BINDING_CONTEXT_PATH)
KUBERNETES=$(jq -r .[0].objects.[0].object.data.kubernetes $BINDING_CONTEXT_PATH)
if ! [ -f /tpls/${PROVIDER}-cleanup.yaml ]; then
echo "ERROR: template not found for ${PROVIDER}-cleanup"
exit 1
fi
export SP_CUSTOMER_ID=$(jq -r .[0].objects.[0].object.metadata.namespace $BINDING_CONTEXT_PATH)
export SP_ENVIRONMENT=$(jq -r .[0].objects.[0].object.metadata.name $BINDING_CONTEXT_PATH)
envsubst < /tpls/${PROVIDER}-cleanup.yaml | kubectl create -f -
fi