From 6207348493731fddd85f18f8b79cd3a17c4f5c62 Mon Sep 17 00:00:00 2001 From: Tao Chen <42793494+IamTaoChen@users.noreply.github.com> Date: Sun, 8 Jun 2025 00:43:56 +0800 Subject: [PATCH] Optimize Agent Install Scripts (#36) * one of 'curl, wget' exiting is OK and optimize deps_check() * curl is necessary --- agent/install.sh | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/agent/install.sh b/agent/install.sh index c463400..2c9c266 100644 --- a/agent/install.sh +++ b/agent/install.sh @@ -17,7 +17,7 @@ success() { } info() { - printf "${yellow}%s${plain}\n" "$*" + printf "${yellow}%s${plain}\n" "$*" } sudo() { @@ -35,14 +35,21 @@ sudo() { } deps_check() { - deps="wget unzip grep" - set -- "$api_list" + local deps="curl unzip grep" + local _err=0 + local missing="" + for dep in $deps; do if ! command -v "$dep" >/dev/null 2>&1; then - err "$dep not found, please install it first." - exit 1 + _err=1 + missing="${missing} $dep" fi done + + if [ "$_err" -ne 0 ]; then + err "Missing dependencies:$missing. Please install them and try again." + exit 1 + fi } geo_check() { @@ -141,7 +148,12 @@ install() { NZ_AGENT_URL="https://${GITHUB_URL}/naibahq/agent/releases/download/${_version}/nezha-agent_${os}_${os_arch}.zip" fi - _cmd="wget -T 60 -O /tmp/nezha-agent_${os}_${os_arch}.zip $NZ_AGENT_URL >/dev/null 2>&1" + if command -v wget >/dev/null 2>&1; then + _cmd="wget --timeout=60 -O /tmp/nezha-agent_${os}_${os_arch}.zip \"$NZ_AGENT_URL\" >/dev/null 2>&1" + elif command -v curl >/dev/null 2>&1; then + _cmd="curl --max-time 60 -fsSL \"$NZ_AGENT_URL\" -o /tmp/nezha-agent_${os}_${os_arch}.zip >/dev/null 2>&1" + fi + if ! eval "$_cmd"; then err "Download nezha-agent release failed, check your network connectivity" exit 1