Files
Phraseanet/infra/dev/deploy-minikube.sh
2021-04-19 10:14:12 +02:00

52 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -ex
BASEDIR="$(dirname $0)"
DIR="${BASEDIR}"
#MINIKUBE_NAME:${MINIKUBE_NAME:-"minikube"}
NS=${NS:-"phraseanet"}
RELEASE_NAME="phraseanet"
CHART_DIR="infra/helm/all"
VALUE_SRC="infra/helm/myvalues.yaml"
#kubectl config use-context $MINIKUBE_NAME
case $1 in
uninstall)
helm uninstall ${RELEASE_NAME} || true;
;;
validate)
helm install --dry-run --debug ${RELEASE_NAME} "${CHART_DIR}" \
-f "${VALUE_SRC}" \
--namespace $NS
;;
update)
echo "Updating..."
helm upgrade ${RELEASE_NAME} "${CHART_DIR}" \
-f "${VALUE_SRC}" \
--namespace $NS
;;
*)
if [ ! -d "${CHART_DIR}/charts" ]; then
(cd "${CHART_DIR}" && helm dependency update)
fi
kubectl create ns $NS || true
helm uninstall ${RELEASE_NAME} --namespace $NS || true;
# kubectl -n $NS delete pvc elasticsearch-master-elasticsearch-master-0 || true
while [ $(kubectl -n $NS get pvc | wc -l) -gt 0 ] || [ $(kubectl -n $NS get pods | wc -l) -gt 0 ]
do
echo "Waiting for resources to be deleted..."
sleep 5
done
echo "Installing release ${RELEASE_NAME} in namespace $NS..."
helm install ${RELEASE_NAME} "${CHART_DIR}" \
-f "${VALUE_SRC}" \
--namespace $NS
;;
esac