mirror of
https://codeberg.org/Freedium-cfd/web.git
synced 2026-03-11 09:04:37 +00:00
74 lines
2 KiB
Bash
Executable file
74 lines
2 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
if [ -z "$TELEGRAM_ADMIN_ID" ]; then echo "TELEGRAM_ADMIN_ID var is blank"; else echo "TELEGRAM_ADMIN_ID var is set to '$TELEGRAM_ADMIN_ID'"; fi
|
|
if [ -z "$TELEGRAM_BOT_TOKEN" ]; then echo "TELEGRAM_BOT_TOKEN var is blank"; else echo "TELEGRAM_BOT_TOKEN var is set to '$TELEGRAM_BOT_TOKEN'"; fi
|
|
|
|
arch=$(lscpu | grep Architecture | awk {'print $2'})
|
|
|
|
redis-cli flushall
|
|
./bin/$arch/caddy run --config CaddyfileProd &
|
|
CADDY_PID=$!
|
|
python3 -m server server &
|
|
SERVER_PID=$!
|
|
|
|
function onexit() {
|
|
echo "onexit"
|
|
sleep 25
|
|
kill $CADDY_PID
|
|
kill $SERVER_PID
|
|
}
|
|
# trap onexit EXIT
|
|
|
|
sendMessageTelegram(){
|
|
echo ${1}
|
|
local message=${1}
|
|
|
|
curl -X POST \
|
|
-H 'Content-Type: application/json' \
|
|
-d "{\"chat_id\":\"$TELEGRAM_ADMIN_ID\",\"text\":\"$message\"}" \
|
|
"https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage"
|
|
}
|
|
|
|
while true
|
|
do
|
|
sleep 5
|
|
|
|
CHECK_CADDY_PID=$(ps -A| grep $CADDY_PID |wc -l)
|
|
if [[ $CHECK_CADDY_PID -eq 0 ]]; then
|
|
sendMessageTelegram "Restarting caddy, since it's down"
|
|
./bin/$arch/caddy run --config CaddyfileProd &
|
|
CADDY_PID=$!
|
|
fi
|
|
|
|
CHECK_SERVER_PID=$(ps -A| grep $SERVER_PID |wc -l)
|
|
if [[ $CHECK_SERVER_PID -eq 0 ]]; then
|
|
sendMessageTelegram "Restarting server, since it's down"
|
|
python3 -m server server &
|
|
SERVER_PID=$!
|
|
fi
|
|
|
|
sleep 5
|
|
|
|
backend_service_url="http://localhost:7080"
|
|
backend_status_code=$(curl -m 10 -s -o /dev/null -w "%{http_code}" "$backend_service_url")
|
|
|
|
if [ "$backend_status_code" -lt 200 ]; then
|
|
sendMessageTelegram "Restarting backend, since it's down"
|
|
kill $SERVER_PID
|
|
python3 -m server server &
|
|
SERVER_PID=$!
|
|
fi
|
|
|
|
reverse_service_url="http://localhost"
|
|
reverse_status_code=$(curl -m 10 -s -o /dev/null -w "%{http_code}" "$reverse_service_url")
|
|
|
|
if [ "$reverse_status_code" -lt 308 ]; then
|
|
sendMessageTelegram "Restarting reverse, since it's down"
|
|
kill $CADDY_PID
|
|
./bin/$arch/caddy run --config CaddyfileProd &
|
|
CADDY_PID=$!
|
|
fi
|
|
|
|
sleep 65
|
|
done
|
|
|