Files
Virtnet.bond/gitapply.sh

83 lines
4.9 KiB
Bash
Executable File

#!/bin/bash
# Colors - Blue to Teal/Cyan gradient palette
BLUE='\033[0;34m'
LBLUE='\033[1;34m'
CYAN='\033[0;36m'
LCYAN='\033[1;36m'
GREEN='\033[0;32m'
TEAL='\033[38;5;37m'
DTEAL='\033[38;5;30m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
BOLD='\033[1m'
NC='\033[0m' # No Color
# Symbols
CHECK="✔"
CROSS="✖"
ARROW="➜"
GEAR="⚙"
ROCKET="🚀"
clear
echo -e "${CYAN}╔════════════════════════════════════════════════════════════════════════════════════╗${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}║ ${LBLUE} .-~~~-. ${LCYAN}██╗ ██╗██╗██████╗ ████████╗███╗ ██╗███████╗████████╗${CYAN} ║${NC}"
echo -e "${CYAN}║ ${LBLUE} .- ~ ~-( )- ~~ -. ${LCYAN}██║ ██║██║██╔══██╗╚══██╔══╝████╗ ██║██╔════╝╚══██╔══╝${CYAN} ║${NC}"
echo -e "${CYAN}║ ${LBLUE} / \\${LCYAN}██║ ██║██║██████╔╝ ██║ ██╔██╗ ██║█████╗ ██║${CYAN} ║${NC}"
echo -e "${CYAN}║ ${BLUE} | ${DTEAL}.-----.${BLUE} |${TEAL}╚██╗ ██╔╝██║██╔══██╗ ██║ ██║╚██╗██║██╔══╝ ██║${CYAN} ║${NC}"
echo -e "${CYAN}║ ${BLUE} \\ ${DTEAL}( )${BLUE} / ${TEAL} ╚████╔╝ ██║██║ ██║ ██║ ██║ ╚████║███████╗ ██║${CYAN} ║${NC}"
echo -e "${CYAN}║ ${DTEAL} \`~ --._____.-- ~\` ${TEAL} ╚═══╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═══╝╚══════╝ ╚═╝${CYAN} ║${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}║ ${BOLD}${YELLOW}Paymenter Load Balancer - Git Update & Apply${NC}${CYAN} ║${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}╚════════════════════════════════════════════════════════════════════════════════════╝${NC}"
echo ""
echo -e "${LBLUE}${ARROW}${NC} Repository: ${LCYAN}https://gitea.virtnet.bond/Joseph.Rawlings/Virtnet.bond/${NC}"
echo ""
sleep_time=$((RANDOM % 5 + 1))
cd /var/www/paymenter
echo -e "${TEAL}${GEAR}${NC} ${BOLD}Preparing update...${NC}"
echo -ne " ${LBLUE}⏳${NC} Waiting "
for ((i=sleep_time; i>0; i--)); do
echo -ne "${LCYAN}${i}${NC} "
sleep 1
done
echo -e "${TEAL}${CHECK}${NC}"
echo ""
echo -e "${TEAL}${GEAR}${NC} ${BOLD}Pulling latest changes from Git...${NC}"
if ! git pull; then
echo -e " ${RED}${CROSS}${NC} Git pull failed!"
echo -e "${LBLUE}${ARROW}${NC} Restarting script..."
sleep 2
exec "$0" "$@"
fi
echo -e " ${TEAL}${CHECK}${NC} Git pull completed"
echo ""
echo -e "${TEAL}${GEAR}${NC} ${BOLD}Clearing caches...${NC}"
php artisan view:clear > /dev/null 2>&1
echo -e " ${TEAL}${CHECK}${NC} View cache cleared"
php artisan cache:clear > /dev/null 2>&1
echo -e " ${TEAL}${CHECK}${NC} Application cache cleared"
echo ""
echo -e "${TEAL}${GEAR}${NC} ${BOLD}Restarting PHP-FPM...${NC}"
systemctl restart php8.3-fpm
echo -e " ${TEAL}${CHECK}${NC} PHP 8.3 FPM restarted"
echo ""
echo -e "${CYAN}╔════════════════════════════════════════════════════════════════════════════════════╗${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}║ ${TEAL}${ROCKET} ${BOLD}UPDATE COMPLETE!${NC}${CYAN} ║${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}║ ${NC}Paymenter has been successfully updated and services restarted.${CYAN} ║${NC}"
echo -e "${CYAN}║ ║${NC}"
echo -e "${CYAN}╚════════════════════════════════════════════════════════════════════════════════════╝${NC}"
echo ""