#!/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 ""