From 67069cfb2148ce6b525514c9c6a2d1c26e2278a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Slavi=C5=A1a=20Are=C5=BEina?= <58952836+tremor021@users.noreply.github.com> Date: Thu, 24 Jul 2025 21:01:05 +0200 Subject: [PATCH] Refactor (#6197) --- ct/gokapi.sh | 25 ++++++++++++++++++++++--- install/gokapi-install.sh | 10 ++++------ 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/ct/gokapi.sh b/ct/gokapi.sh index a4a14398c..be5779b38 100644 --- a/ct/gokapi.sh +++ b/ct/gokapi.sh @@ -27,8 +27,27 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - msg_error "Currently we don't provide an update function for this ${APP}." - exit + if [[ -f /opt/${APP}_version.txt ]]; then + mv /opt/${APP}_version ~/.gokapi + fi + + RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + if [[ "${RELEASE}" != "$(cat ~/.gokapi 2>/dev/null)" ]] || [[ ! -f ~/.gokapi ]]; then + msg_info "Stopping ${APP}" + systemctl stop gokapi + msg_ok "Stopped ${APP}" + + fetch_and_deploy_gh_release "gokapi" "Forceu/Gokapi" "prebuild" "latest" "/opt/gokapi" "gokapi-linux_amd64.zip" + + msg_info "Starting ${APP}" + systemctl start gokapi + msg_ok "Started ${APP}" + + msg_ok "Updated Successfully" + else + msg_ok "No update required. ${APP} is already at ${RELEASE}" + fi + exit } start @@ -38,4 +57,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:53842/setup${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:53842/setup${CL}" diff --git a/install/gokapi-install.sh b/install/gokapi-install.sh index e849ad361..272a7a05f 100644 --- a/install/gokapi-install.sh +++ b/install/gokapi-install.sh @@ -13,14 +13,12 @@ setting_up_container network_check update_os -msg_info "Installing Gokapi" -LATEST=$(curl -fsSL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +fetch_and_deploy_gh_release "gokapi" "Forceu/Gokapi" "prebuild" "latest" "/opt/gokapi" "gokapi-linux_amd64.zip" + +msg_info "Configuring Gokapi" mkdir -p /opt/gokapi/{data,config} -curl -fsSL "https://github.com/Forceu/Gokapi/releases/download/$LATEST/gokapi-linux_amd64.zip" -o "gokapi-linux_amd64.zip" -$STD unzip gokapi-linux_amd64.zip -d /opt/gokapi -rm gokapi-linux_amd64.zip chmod +x /opt/gokapi/gokapi-linux_amd64 -msg_ok "Installed Gokapi" +msg_ok "Configured Gokapi" msg_info "Creating Service" cat </etc/systemd/system/gokapi.service