Files
foxhunt/scripts/stop_foxhunt.sh
jgrusewski 39c1028502 🚀 Wave 126 Wave 1 Complete: 6 agents deployed - 4/4 services healthy
Agent 106: ML health endpoint (HTTP/8095)
Agent 107: Redis test fix (serial_test isolation)
Agent 108: CLAUDE.md draft update (95-97% → 100%)
Agent 109: Prometheus/Grafana setup (31 alerts, 6 dashboards)
Agent 110: Deployment docs (9 files + 4 scripts)
Agent 111: Security audit prep (0 critical vulnerabilities)

Service Health: 4/4 healthy (100%)
Tests: 99%+ pass rate
Production: ~98% readiness

Next: Wave 2 (E2E, load, perf, security validation)
2025-10-08 00:11:38 +02:00

86 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
# Foxhunt HFT System - Graceful Shutdown Sequence
# Stops all services in reverse dependency order
# Color codes
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
echo "================================================================================"
echo " Foxhunt HFT System - Shutdown Sequence"
echo "================================================================================"
echo "Timestamp: $(date '+%Y-%m-%d %H:%M:%S')"
echo ""
# Function to stop and verify
stop_service() {
local service_name=$1
echo -n " Stopping $service_name..."
if docker-compose stop "$service_name" 2>/dev/null; then
echo -e " ${GREEN}OK${NC}"
return 0
else
echo -e " ${YELLOW}skipped${NC}"
return 1
fi
}
# Layer 3: Stop API Gateway first (client-facing)
echo -e "${BLUE}[1/4] Stopping API Gateway...${NC}"
stop_service "api_gateway"
echo ""
# Layer 2: Stop core services
echo -e "${BLUE}[2/4] Stopping Core Services...${NC}"
stop_service "trading_service"
stop_service "backtesting_service"
stop_service "ml_training_service"
echo ""
# Layer 1: Stop infrastructure
echo -e "${BLUE}[3/4] Stopping Infrastructure...${NC}"
stop_service "postgres"
stop_service "redis"
stop_service "vault"
stop_service "influxdb"
echo ""
# Stop monitoring
echo -e "${BLUE}[4/4] Stopping Monitoring...${NC}"
stop_service "prometheus"
stop_service "grafana"
stop_service "alertmanager"
echo ""
# Verify all stopped
echo "Verifying shutdown..."
RUNNING=$(docker-compose ps --filter "status=running" 2>/dev/null | grep -c "Up" || echo "0")
if [ "$RUNNING" -eq 0 ]; then
echo -e "${GREEN}✓ All services stopped successfully${NC}"
else
echo -e "${YELLOW}$RUNNING services still running${NC}"
docker-compose ps --filter "status=running"
fi
echo ""
echo "================================================================================"
echo -e "${GREEN}✓ Foxhunt HFT System Shutdown Complete${NC}"
echo "================================================================================"
echo ""
echo "Final Status:"
docker-compose ps
echo ""
echo "To restart:"
echo " ./scripts/start_foxhunt.sh"
echo ""
echo "To fully clean (removes volumes):"
echo " docker-compose down -v"
echo ""
echo "================================================================================"