Spaces:
Sleeping
Sleeping
| # Add the project root to PYTHONPATH | |
| export PYTHONPATH="/home/jelle/Tools/pythagora-core/workspace/fabric_to_espanso:$PYTHONPATH" | |
| # Create a log directory if it doesn't exist | |
| LOG_DIR="/home/jelle/Tools/pythagora-core/workspace/fabric_to_espanso/logs" | |
| mkdir -p "$LOG_DIR" | |
| LOG_FILE="$LOG_DIR/streamlit.log" | |
| # Clean up any existing nohup.out | |
| if [ -f nohup.out ]; then | |
| cat /dev/null > nohup.out | |
| fi | |
| # Check if streamlit is already running on port 8501 | |
| if ss -tuln | grep -q ":8501 "; then | |
| echo "Port 8501 is already in use. No need to start the app again." | |
| exit 0 | |
| fi | |
| # Run the streamlit app | |
| echo "Starting Streamlit app..." | |
| nohup /home/jelle/Tools/pythagora-core/workspace/fabric_to_espanso/.venv/bin/streamlit run ~/Tools/pythagora-core/workspace/fabric_to_espanso/src/search_qdrant/streamlit_app.py >> "LOG_FILE" 2>&1 & | |
| echo "Streamlit process started with PID: $!" | |
| # Wait a moment and check if the process is still running | |
| sleep 2 | |
| if ps -p $! > /dev/null; then | |
| echo "Streamlit successfully started" | |
| else | |
| echo "Failed to start Streamlit. Check $LOG_FILE for details" | |
| exit 1 | |
| fi | |
| # Wait for Streamlit to start and capture its initial output | |
| # max_attempts=5 | |
| # attempt=0 | |
| # while [ $attempt -lt $max_attempts ]; do | |
| # if grep -q "You can now view your Streamlit app" streamlit.log; then | |
| # cat streamlit.log | grep -A 3 "You can now view your Streamlit app" | |
| # exit 0 | |
| # fi | |
| # sleep 1 | |
| # ((attempt++)) | |
| # done | |
| # echo "Failed to start Streamlit server" | |