From 7d0d75a190bea1205a7255810b2ee0efa7744320 Mon Sep 17 00:00:00 2001 From: Aidan Date: Wed, 13 Nov 2024 15:08:33 -0500 Subject: [PATCH] add better port activity checking --- manage | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/manage b/manage index 83a55b8..38f8a16 100755 --- a/manage +++ b/manage @@ -156,12 +156,19 @@ function restart_server() { echo -e "${COLOR_BLUE}Starting server...${COLOR_RESET}" npm start > node.log 2>&1 & - sleep 2 + + for i in {1..10}; do + PIDS=$(lsof -t -i:$PORT) + if [ -n "$PIDS" ]; then + echo -e "${COLOR_GREEN}\nDone. Server up and running on port $PORT!\n${COLOR_RESET}" + break + else + echo -e "${COLOR_YELLOW}Waiting for server to start on port $PORT...${COLOR_RESET}" + sleep 1 + fi + done - PIDS=$(lsof -t -i:$PORT) - if [ -n "$PIDS" ]; then - echo -e "${COLOR_GREEN}\nDone. Server up and running on port $PORT!\n${COLOR_RESET}" - else + if [ -z "$PIDS" ]; then echo -e "${COLOR_RED}Something went wrong... Check node.log for more details${COLOR_RESET} (no process on port)" fi } @@ -207,12 +214,19 @@ function start_server() { echo -e "${COLOR_BLUE}Starting server...${COLOR_RESET}" npm start > node.log 2>&1 & - sleep 1 + + for i in {1..10}; do + PIDS=$(lsof -t -i:$PORT) + if [ -n "$PIDS" ]; then + echo -e "${COLOR_GREEN}\nDone. Server up and running on port $PORT!\n${COLOR_RESET}" + break + else + echo -e "${COLOR_YELLOW}Waiting for server to start on port $PORT...${COLOR_RESET}" + sleep 1 + fi + done - PIDS=$(lsof -t -i:$PORT) - if [ -n "$PIDS" ]; then - echo -e "${COLOR_GREEN}\nDone. Server up and running on port $PORT!\n${COLOR_RESET}" - else + if [ -z "$PIDS" ]; then echo -e "${COLOR_RED}Something went wrong... Check node.log for more details${COLOR_RESET} (no process on port)" fi }