69 lines
2.6 KiB
Bash
Executable File
69 lines
2.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# NodeMgmt Loader
|
|
|
|
source /opt/idssys/nodemgmt/settings.conf
|
|
source /opt/idssys/defaults/colors.inc
|
|
# source /opt/idssys/defaults/default.inc
|
|
VERS=`mysql -h 10.5.10.56 -P 3308 -u sqluser -pdcs2057 -s -N -e "SELECT value FROM idssys.nodemgmt WHERE var = 'VERS'"`
|
|
NODE_SERVICES=mysql,nginx,gitea,haproxy,keepalived,maxscale
|
|
IFS=,
|
|
NODE_SERVICES=(${NODE_SERVICES})
|
|
unset IFS
|
|
|
|
if [ "$1" != "service" ] && [ "$1" != "status" ] && [ "$1" != "" ]; then
|
|
echo ""
|
|
echo -e "${idsCL[Yellow]} NodeMgmt - Galera/NGINX Node Management${idsCL[Default]} ${idsCL[DarkGray]}(ver-${VERS})${idsCL[Default]}"
|
|
echo -e "${idsCL[Yellow]}-------------------------------------------------------------${idsCL[Default]}"
|
|
echo -e "Node hostname: ${node_hostname}"
|
|
for srvc in "${NODE_SERVICES[@]}"
|
|
do
|
|
if [ "${srvc}" = "mysql" ]; then SER='MySQL: '
|
|
elif [ "${srvc}" = "nginx" ]; then SER='NGINX: '
|
|
elif [ "${srvc}" = "gogs" ]; then SER='Gogs: '
|
|
elif [ "${srvc}" = "gitea" ]; then SER='Gitea: '
|
|
elif [ "${srvc}" = "haproxy" ]; then SER='HAProxy:'
|
|
elif [ "${srvc}" = "keepalived" ]; then SER='Keepalived:'
|
|
elif [ "${srvc}" = "maxscale" ]; then SER='MaxScale:'
|
|
else SER="${2}"
|
|
fi
|
|
echo -en "${SER} "
|
|
if [ $(pgrep ${srvc} | wc -l) -gt "0" ]; then
|
|
echo -e "${idsCL[Green]}Running${idsCL[Default]}"
|
|
else echo -e "${idsCL[Red]}Not Running${idsCL[Default]}"
|
|
fi
|
|
done
|
|
echo -e "${idsCL[Yellow]}-------------------------------------------------------------${idsCL[Default]}"
|
|
echo ""
|
|
|
|
echo -en "${idsCL[LightCyan]}Checking for updates...${idsCL[Default]}"
|
|
|
|
echo ""
|
|
cd /opt/idssys/defaults
|
|
if [ "`git log --pretty=%H ...refs/heads/master^ | head -n 1`" != "`git ls-remote origin -h refs/heads/master |cut -f1`" ]; then
|
|
git fetch origin master >/dev/null 2>&1
|
|
git reset --hard origin/master >/dev/null 2>&1
|
|
git reflog expire --expire=now --all >/dev/null 2>&1
|
|
git repack -ad >/dev/null 2>&1
|
|
git prune >/dev/null 2>&1
|
|
git pull >/dev/null 2>&1
|
|
#echo ""
|
|
#echo -e "\e[92m\e[1mLinUPx update completed\e[0m"
|
|
fi
|
|
cd /opt/idssys/nodemgmt
|
|
if [ "`git log --pretty=%H ...refs/heads/master^ | head -n 1`" != "`git ls-remote origin -h refs/heads/master |cut -f1`" ]; then
|
|
git fetch origin master >/dev/null 2>&1
|
|
git reset --hard origin/master >/dev/null 2>&1
|
|
git reflog expire --expire=now --all >/dev/null 2>&1
|
|
git repack -ad >/dev/null 2>&1
|
|
git prune >/dev/null 2>&1
|
|
git pull >/dev/null 2>&1
|
|
#echo ""
|
|
#echo -e "\e[92m\e[1mLinUPx update completed\e[0m"
|
|
fi
|
|
echo -en "\e[1A";
|
|
echo -e "\e[0K\r ${idsCL[Green]}Updates Completed${idsCL[Default]}"
|
|
echo ""
|
|
fi
|
|
/opt/idssys/nodemgmt/nodemgmt-scripts.sh $1 $2 $3 $4
|
|
exit 0
|