[CCSDK-28] populated the seed code for dgbuilder
[ccsdk/distribution.git] / dgbuilder / show_status.sh
diff --git a/dgbuilder/show_status.sh b/dgbuilder/show_status.sh
new file mode 100755 (executable)
index 0000000..2119751
--- /dev/null
@@ -0,0 +1,54 @@
+#!/bin/bash
+tbold=$(tput setf 3)
+bold=$(tput setf 2)
+bold1=$(tput setf 2)
+offbold=$(tput rmso;tput sgr0)
+
+function pad {
+        #echo "1 is $1 2 is $2"
+        if [ "$1" == "" ]
+        then
+                $1 = "";
+        fi
+        let count=0
+        curr_len=`expr length "$1"`
+        let space_length=$2-$curr_len
+        spaces=""
+        while [ $count -lt $space_length ]
+        do
+                spaces="$spaces "
+                let count=$count+1
+        done
+        echo "$1$spaces"
+}
+       
+function isRunning {
+       echo $(curl -I "$1" 2>/dev/null|head -1|tail -1|awk '{print $2}')
+}
+dirName=$(pwd)
+options=($(ls -l $dirName/releases|grep ^d|awk '{print $NF}'|sort))
+       echo "$(pad RELEASE 15)$(pad URL 30)$(pad Status 10)"
+       echo "$(pad '----' 15)$(pad '---' 30)$(pad '------' 10)"
+       for opt in "${options[@]}" 
+       do 
+               
+               releaseDir="$opt"
+               if [ -e "./releases/${opt}/customSettings.js" ]
+               then
+                       pid=$(cat ./releases/$releaseDir/logs/process_pid 2>/dev/null)
+                       port=$(cat ./releases/$releaseDir/customSettings.js 2>/dev/null|grep uiPort|sed -e 's/[, ]//g'|cut -d: -f2)
+                       resp1=$(isRunning "http://localhost:$port")
+                       if [ "$resp1" == "401" ]
+                       then    
+                               echo "$(pad $releaseDir 15)$(pad http://localhost:$port 30)${bold}$(pad running 10)${offbold}"
+                       else
+                               processId=$(netstat -upltn 2>/dev/null|grep $port|awk '{print $NF}'|sed -e 's%/node-red%%g')
+                               if [ "$processId" == "" ]
+                               then
+                                       echo "$(pad $releaseDir 15)$(pad http://localhost:$port 30)${bold}$(pad stopped 10)${offbold}"
+                               else
+                                       echo "$(pad $releaseDir 15)$(pad http://localhost:$port 30)${bold}$(pad running 10)${offbold}"
+                               fi
+                       fi
+               fi
+       done