core-deployments/velero/install.sh

60 lines
1.9 KiB
Bash
Raw Normal View History

2023-08-26 12:11:57 +02:00
#!/usr/bin/env bash
2023-08-26 18:03:43 +02:00
###################
AWSVERSION=v1.7.1
CSIVERSION=v0.5.1
BUCKET=yolokube-velero
S3URL=https://38a7c29ab4f869c340784d3d7aaa0f62.r2.cloudflarestorage.com
###################
2023-08-26 12:11:57 +02:00
command_exists() {
command -v "$1" >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
echo "Software dependency not met: $1"
exit 1
fi
}
2023-08-26 18:03:43 +02:00
echo -n "check if velero is installed"
2023-08-26 12:11:57 +02:00
command_exists "velero"
2023-08-26 18:03:43 +02:00
echo ": done"
if [ ! -f ./credentials ]; then
echo "credentials file is missing, aborting"
exit 1
fi
PS3='Please enter your choice: '
options=("Install velero with CSI plugins" "Install velero without CSI plugins" "Install CSI Plugins only" "Quit")
select opt in "${options[@]}"
do
case $opt in
"Install velero with CSI plugins")
velero install \
--provider aws \
--features=EnableCSI \
--plugins velero/velero-plugin-for-aws:${AWSVERSION},velero/velero-plugin-for-csi:${CSIVERSION} \
--bucket ${BUCKET} \
--secret-file ./credentials \
--use-volume-snapshots=false \
--backup-location-config region=weur,s3ForcePathStyle="true",s3Url=${S3URL}
exit 0
;;
"Install velero without CSI plugins")
velero install \
--provider aws \
--plugins velero/velero-plugin-for-aws:${AWSVERSION} \
--bucket ${BUCKET} \
--secret-file ./credentials \
--use-volume-snapshots=false \
--backup-location-config region=weur,s3ForcePathStyle="true",s3Url=${S3URL}
exit 0
;;
"Install CSI Plugins only")
velero plugin add velero/velero-plugin-for-csi:${CSIVERSION}
velero client config set features=EnableCSI
echo "done"
exit 0
;;
"Quit")
exit 0
;;
*) echo "invalid option $REPLY";;
esac
done
exit 1