#!/bin/bash # Development startup script for Sereact API # This script sets the environment variables and starts the application # Auto-generated by deployment/scripts/setup_local_env.sh # Function to handle cleanup on exit cleanup() { echo "" echo "Shutting down server..." if [ ! -z "$SERVER_PID" ]; then kill $SERVER_PID 2>/dev/null wait $SERVER_PID 2>/dev/null fi echo "Server stopped." exit 0 } # Set up signal handlers trap cleanup SIGINT SIGTERM # Activate virtual environment source venv/Scripts/activate # Set environment variables from deployed infrastructure export QDRANT_HOST=34.171.134.17 export QDRANT_PORT=6333 export FIRESTORE_PROJECT_ID=gen-lang-client-0424120530 export GCS_BUCKET_NAME=sereact-images export ENVIRONMENT=development # Start the application echo "Starting Sereact API with deployed infrastructure..." echo "Qdrant endpoint: http://$QDRANT_HOST:$QDRANT_PORT" echo "Firestore project: $FIRESTORE_PROJECT_ID" echo "GCS bucket: $GCS_BUCKET_NAME" echo "API will be available at: http://localhost:8000" echo "API documentation: http://localhost:8000/docs" echo "Press Ctrl+C to stop the server" echo "" # Start uvicorn in background and capture PID uvicorn main:app --host 0.0.0.0 --port 8000 --reload & SERVER_PID=$! # Wait for the server process wait $SERVER_PID