From 72ac3792eac45031f88fe5331b06573fc49ac751 Mon Sep 17 00:00:00 2001 From: tremor021 Date: Wed, 23 Apr 2025 19:31:26 +0200 Subject: [PATCH] Update alpine-rclone --- ct/alpine-rclone.sh | 30 ++++++++++++++++++------------ install/alpine-rclone-install.sh | 15 ++++++++++----- 2 files changed, 28 insertions(+), 17 deletions(-) diff --git a/ct/alpine-rclone.sh b/ct/alpine-rclone.sh index 4c5eb23..d6fd160 100644 --- a/ct/alpine-rclone.sh +++ b/ct/alpine-rclone.sh @@ -20,21 +20,27 @@ color catch_errors function update_script() { - header_info - msg_info "Updating Alpine Packages" - $STD apk update - $STD apk upgrade - msg_ok "Updated Alpine Packages" + header_info + check_container_storage + check_container_resources - msg_info "Updating Rclone" - $STD apk upgrade rclone - msg_ok "Updated Rclone" + if [ ! -d /opt/rclone ]; then + msg_error "No ${APP} Installation Found!" + exit 1 + fi - msg_info "Restarting Rclone" - $STD rc-service rclone restart || true - msg_ok "Restarted Rclone" + RELEASE=$(curl -s https://api.github.com/repos/rclone/rclone/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + if [ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ] || [ ! -f /opt/${APP}_version.txt ]; then + msg_info "Updating ${APP} LXC" + temp_file=$(mktemp) + curl -fsSL "https://github.com/rclone/rclone/releases/download/v${RELEASE}/rclone-v${RELEASE}-linux-amd64.zip" -o $temp_file + $STD unzip -o $temp_file '*/**' -d /opt/rclone + msg_ok "Updated Successfully" + else + msg_ok "No update required. ${APP} is already at ${RELEASE}" + fi - exit 0 + exit 0 } start diff --git a/install/alpine-rclone-install.sh b/install/alpine-rclone-install.sh index 8ec630b..ee7044b 100644 --- a/install/alpine-rclone-install.sh +++ b/install/alpine-rclone-install.sh @@ -15,8 +15,8 @@ update_os msg_info "Installing dependencies" $STD apk add --no-cache \ - unzip \ - apache2-utils + unzip \ + apache2-utils msg_ok "Installed dependencies" msg_info "Installing rclone" @@ -29,9 +29,9 @@ cd /opt/rclone PASSWORD=$(head -c 16 /dev/urandom | xxd -p -c 16) $STD htpasswd -cb -B login.pwd admin $PASSWORD { - echo "rclone-Credentials" - echo "rclone User Name: admin" - echo "rclone Password: $PASSWORD" + echo "rclone-Credentials" + echo "rclone User Name: admin" + echo "rclone Password: $PASSWORD" } >>~/rclone.creds echo "${RELEASE}" >/opt/${APPLICATION}_version.txt rm -f $temp_file @@ -61,3 +61,8 @@ msg_ok "Started rclone" motd_ssh customize + +msg_info "Cleaning up" +rm -rf "$temp_file" +$STD apk cache clean +msg_ok "Cleaned"