diff --git a/ct/zoraxy.sh b/ct/zoraxy.sh index a9694ac7..7c5a23e3 100644 --- a/ct/zoraxy.sh +++ b/ct/zoraxy.sh @@ -20,7 +20,7 @@ header_info echo -e "Loading..." APP="Zoraxy" var_disk="6" -var_cpu="4" +var_cpu="2" var_ram="2048" var_os="debian" var_version="12" @@ -54,20 +54,19 @@ function default_settings() { function update_script() { header_info -if [[ ! -d /opt/zoraxy/src ]]; then msg_error "No ${APP} Installation Found!"; exit; fi -whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75 -msg_info "Updating $APP" -systemctl stop zoraxy -cd /opt/zoraxy/src -systemctl stop zoraxy -if git pull | grep -q 'Already up to date.'; then - msg_ok "Already up to date. No update required." +if [[ ! -f /etc/systemd/system/zoraxy.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi +RELEASE="$(curl -s https://api.github.com/repos/tobychui/zoraxy/releases | grep -oP '"tag_name":\s*"\K[\d.]+?(?=")' | sort -V | tail -n1)" +msg_info "Updating ${APP} LXC to ${RELEASE}" +if [[ "${RELEASE}" != "$(cat "/opt/${APP}_version.txt")" ]] || [[ ! -f "/opt/${APP}_version.txt" ]]; then + wget -q "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" + install zoraxy_linux_amd64 /usr/bin/zoraxy + rm zoraxy_linux_amd64 + echo "${RELEASE}" > "/opt/${APP}_version.txt" + systemctl restart traefik.service + msg_ok "Updated ${APP} LXC" else - go mod tidy - go build - msg_ok "Updated $APP" + msg_ok "No update required. ${APP} is already at ${RELEASE}" fi -systemctl start zoraxy exit } @@ -75,9 +74,6 @@ start build_container description -msg_info "Setting Container to Normal Resources" -pct set $CTID -cores 2 -msg_ok "Set Container to Normal Resources" msg_ok "Completed Successfully!\n" echo -e "${APP} should be reachable by going to the following URL. ${BL}http://${IP}:8000${CL} \n" diff --git a/install/zoraxy-install.sh b/install/zoraxy-install.sh index 73787ed1..0427c9d7 100644 --- a/install/zoraxy-install.sh +++ b/install/zoraxy-install.sh @@ -20,20 +20,11 @@ $STD apt-get install -y mc $STD apt-get install -y git msg_ok "Installed Dependencies" -msg_info "Installing Golang" -set +o pipefail -RELEASE=$(curl -s https://go.dev/dl/ | grep -o "go.*\linux-amd64.tar.gz" | head -n 1) -wget -q https://golang.org/dl/$RELEASE -$STD tar -xzf $RELEASE -C /usr/local -$STD ln -s /usr/local/go/bin/go /usr/local/bin/go -set -o pipefail -msg_ok "Installed Golang" - -msg_info "Installing Zoraxy (Patience)" -$STD git clone https://github.com/tobychui/zoraxy /opt/zoraxy -cd /opt/zoraxy/src -$STD go mod tidy -$STD go build +RELEASE="$(curl -s https://api.github.com/repos/tobychui/zoraxy/releases | ggrep -oP '"tag_name":\s*"\K[\d.]+?(?=")' | sort -V | tail -n1)" +msg_info "Installing Zoraxy v${RELEASE}" +wget -q "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" +install zoraxy_linux_amd64 /usr/bin/zoraxy +echo "${RELEASE}" > "/opt/${APPLICATION}_version.txt" msg_ok "Installed Zoraxy" msg_info "Creating Service" @@ -43,8 +34,7 @@ Description=General purpose request proxy and forwarding tool After=syslog.target network-online.target [Service] -ExecStart=/opt/zoraxy/src/./zoraxy -WorkingDirectory=/opt/zoraxy/src/ +ExecStart=/usr/bin/zoraxy Restart=always [Install] @@ -57,7 +47,6 @@ motd_ssh customize msg_info "Cleaning up" -rm -rf $RELEASE $STD apt-get -y autoremove $STD apt-get -y autoclean msg_ok "Cleaned"