scale-catalog/functions/misc.sh

88 lines
3.1 KiB
Bash
Raw Normal View History

2022-07-25 02:29:58 +00:00
#!/bin/bash
sync(){
2022-07-31 18:56:50 +00:00
echo_sync+=("🅂 🅈 🄽 🄲")
2022-07-26 23:43:06 +00:00
cli -c 'app catalog sync_all' &> /dev/null && echo_sync+=("Catalog sync complete")
2022-07-26 06:32:37 +00:00
#Dump the echo_array, ensures all output is in a neat order.
for i in "${echo_sync[@]}"
do
echo -e "$i"
done
2022-07-31 18:56:50 +00:00
echo
echo
2022-07-25 02:29:58 +00:00
}
export -f sync
prune(){
2022-07-31 19:06:00 +00:00
echo -e "🄿 🅁 🅄 🄽 🄴"
2022-07-26 23:53:08 +00:00
echo "Pruned Docker Images"
docker image prune -af | grep "^Total" || echo "Failed to Prune Docker Images"
2022-07-25 02:29:58 +00:00
}
export -f prune
title(){
echo ' _ _ _____ _ _ '
echo '| | | | / ___| (_) | | '
echo '| |_| | ___ __ ___ ___ _\ `--. ___ _ __ _ _ __ | |_'
echo "| _ |/ _ \/ _\` \ \ / / | | |\`--. \/ __| '__| | '_ \| __|"
echo '| | | | __/ (_| |\ V /| |_| /\__/ / (__| | | | |_) | |_ '
echo '\_| |_/\___|\__,_| \_/ \__, \____/ \___|_| |_| .__/ \__|'
echo ' __/ | | | '
echo ' |___/ |_| '
2022-08-23 18:02:41 +00:00
echo "$hs_version"
2022-07-25 02:29:58 +00:00
echo
}
export -f title
help(){
[[ $help == "true" ]] && clear -x
2022-07-27 02:34:18 +00:00
echo "Access the HeavyScript Menu"
echo "---------------------------"
echo "bash heavy_script.sh"
echo
2022-08-01 01:01:16 +00:00
echo "Utilities"
echo "---------"
2022-07-25 02:29:58 +00:00
echo "--mount | Initiates mounting feature, choose between unmounting and mounting PVC data"
echo "--restore | Opens a menu to restore a \"heavy_script\" backup that was taken on your \"ix-applications\" dataset"
echo "--delete-backup | Opens a menu to delete backups on your system"
echo "--dns | list all of your applications DNS names and their web ports"
2022-08-17 02:08:03 +00:00
echo "--cmd | Open a shell for one of your applications"
2022-07-25 02:29:58 +00:00
echo
2022-08-01 01:01:16 +00:00
echo "Update Types"
2022-08-01 01:05:06 +00:00
echo "------------"
2022-07-27 02:38:18 +00:00
echo "-U | Update all applications, ignores versions"
echo "-U 5 | Same as above, but updates 5 applications at one time"
echo "-u | Update all applications, does not update Major releases"
echo "-u 5 | Same as above, but updates 5 applications at one time"
2022-07-27 02:31:44 +00:00
echo
2022-08-01 01:01:16 +00:00
echo "Update Options"
echo "--------------"
2022-07-27 02:38:18 +00:00
echo "-r | Roll-back applications if they fail to update"
2022-08-01 01:01:16 +00:00
echo "-i | Add application to ignore list, one by one, see example below."
2022-07-27 02:38:18 +00:00
echo "-S | Shutdown applications prior to updating"
echo "-v | verbose output"
echo "-t 500| Set a custom timeout in seconds when checking if either an App or Mountpoint correctly Started, Stopped or (un)Mounted. Defaults to 500 seconds"
2022-08-01 01:01:16 +00:00
echo
echo "Additional Options"
echo "------------------"
echo "-b 14 | Back-up your ix-applications dataset, specify a number after -b"
2022-07-27 02:38:18 +00:00
echo "-s | sync catalog"
echo "-p | Prune unused/old docker images"
2022-08-01 01:01:16 +00:00
echo "--self-update | Updates HeavyScript prior to running any other commands"
2022-07-25 02:29:58 +00:00
echo
echo "Examples"
2022-07-27 02:34:18 +00:00
echo "--------"
2022-07-27 02:38:18 +00:00
echo "bash heavy_script.sh"
2022-08-01 01:01:16 +00:00
echo "bash heavy_script.sh -b 14 -i portainer -i arch -i sonarr -t 600 -vrsUp --self-update"
echo "bash heavy_script.sh -b 14 -i portainer -i arch -i sonarr -t 600 -vrsp -U 10 --self-update"
2022-07-25 02:29:58 +00:00
echo "bash /mnt/tank/scripts/heavy_script.sh -t 150 --mount"
echo "bash /mnt/tank/scripts/heavy_script.sh --dns"
echo "bash heavy_script.sh --restore"
echo "bash /mnt/tank/scripts/heavy_script.sh --delete-backup"
echo
exit
}
export -f help