From dc49400904e811d64b51454ad8093c42e7718e6e Mon Sep 17 00:00:00 2001 From: MickLesk Date: Thu, 28 May 2026 07:40:37 +0200 Subject: [PATCH] fix(fileflows): use fileflows.com header for node version check Replace GitHub API call (repo does not exist) with a HEAD request to the fileflows.com download URL. The Content-Disposition header contains the versioned filename, from which the release number is parsed and compared against the local version file. If the header is not available the node update proceeds unconditionally, since the user explicitly invoked the update command. --- ct/fileflows.sh | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ct/fileflows.sh b/ct/fileflows.sh index 2e67a7135..d36f3c8f7 100644 --- a/ct/fileflows.sh +++ b/ct/fileflows.sh @@ -31,16 +31,16 @@ function update_script() { exit fi - RELEASE=$(curl -fsSL "https://api.github.com/repos/revenz/FileFlows/releases/latest" | jq -r '.tag_name' | sed 's/^v//') CURRENT=$(cat /opt/fileflows/version 2>/dev/null | tr -d '[:space:]') + # Extract latest version from the Content-Disposition header of the download URL + RELEASE=$(curl -fsI "https://fileflows.com/downloads/zip" 2>/dev/null \ + | grep -i "content-disposition" \ + | grep -oP '[\d]+\.[\d]+\.[\d]+\.[\d]+' \ + | head -1) if systemctl is-enabled fileflows-node &>/dev/null && ! systemctl is-enabled fileflows &>/dev/null; then # Node-only installation: no local server API available - if [[ -z "$RELEASE" ]]; then - msg_error "Failed to retrieve latest ${APP} version" - exit - fi - if [[ "$CURRENT" == "$RELEASE" ]]; then + if [[ -n "$RELEASE" && "$CURRENT" == "$RELEASE" ]]; then msg_ok "No update required. ${APP} Node is already at v${CURRENT}" exit fi @@ -59,7 +59,7 @@ function update_script() { msg_info "Starting Service" systemctl start fileflows-node msg_ok "Started Service" - msg_ok "Updated successfully to v${RELEASE}!" + msg_ok "Updated successfully!" else # Server installation: use the local API update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable) @@ -79,7 +79,7 @@ function update_script() { msg_info "Starting Service" systemctl start fileflows* msg_ok "Started Service" - msg_ok "Updated successfully to v${RELEASE}!" + msg_ok "Updated successfully!" else msg_ok "No update required. ${APP} is already at latest version" fi