2
0
Fork 0

add error handling

main
Ducky 2023-08-24 02:08:22 +01:00
parent 22e7a43a52
commit c0ab7cb7b0
1 changed files with 17 additions and 4 deletions

View File

@ -2,23 +2,36 @@
wd="$(realpath "$(dirname "$(realpath -s "$0")")/.tmp")"
git_url_prefix="https://git.zio.sh/zio/rootfs/raw/branch/main"
helpers_dir="$wd/helpers"
function die() {
echo -e "\033[1;31mError: $@\033[0m"
exit 255
}
function fetch() {
url="$1"
output="$2"
curl -L -s -o "$output" "$url"
[[ $? != 0 ]] && die "Unable to download '$url'"
}
[[ ! -w "$(dirname "$(realpath -s "$0")")" ]] && die "No write permissions in current directory"
mkdir -p "$wd"
mkdir -p "$wd/helpers"
mkdir -p "$helpers_dir"
fetch "$git_url_prefix/usr/local/bin/sh.zio.backup" "$wd/backup.sh"
fetch "$git_url_prefix/usr/local/libexec/zio/helpers/bash.sh" "$wd/helpers/bash.sh"
chmod +x "$wd/backup.sh"
chmod +x "$wd/helpers/bash.sh"
chmod +x "$helpers_dir/bash.sh"
export ZIO_HELPERS_DIR="$wd/helpers"
. "$wd/backup.sh" $@
if [[ -n "$SUDO_USER" ]]; then
chown -R "$SUDO_USER" "$wd"
fi
export ZIO_HELPERS_DIR="$helpers_dir"
/usr/bin/env bash "$wd/backup.sh" $@
rm -rf "$wd"