#!/bin/bash echo "Stopping Contoso API server..." # Find and kill uvicorn processes PIDS=$(ps aux | grep "uvicorn main:app" | grep -v grep | awk '{print $2}') if [ -z "$PIDS" ]; then echo "No running server found." else echo "Found server process(es): $PIDS" for PID in $PIDS; do echo "Killing process $PID..." kill $PID sleep 1 # Force kill if still running if kill -0 $PID 2>/dev/null; then echo "Force killing process $PID..." kill -9 $PID fi done echo "Server stopped." fi # Also check for any Python processes running main.py PYTHON_PIDS=$(ps aux | grep "python.*main.py\|python.*main:app" | grep -v grep | awk '{print $2}') if [ ! -z "$PYTHON_PIDS" ]; then echo "Found Python processes: $PYTHON_PIDS" for PID in $PYTHON_PIDS; do echo "Killing Python process $PID..." kill $PID sleep 1 if kill -0 $PID 2>/dev/null; then kill -9 $PID fi done fi echo "All server processes stopped."