goumsss Claude Sonnet 4.6 commited on
Commit
d34e1e5
Β·
1 Parent(s): 6e35be4

scripts: remove hardcoded paths, clean up run.sh kill logic

Browse files

- All scripts use \${HOME}/miniforge3/bin/python3 instead of /Users/uplab/...
- test.sh uses relative path to puppeteer dir (../../puppeteer)
- check_sdk.sh uses importlib.metadata instead of hardcoded pip path
- run.sh: kill only the previously saved port (from numzoo.port) instead
of scanning + force-killing all 7860-7865 ports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

scripts/check_imports.sh CHANGED
@@ -1,5 +1,6 @@
1
  #!/bin/bash
 
2
  cd "$(dirname "$0")/.."
3
  echo "Checking imports..."
4
- ~/miniforge3/bin/python3 -c "import app" 2>&1
5
  if [ $? -eq 0 ]; then echo "βœ… imports OK"; else echo "❌ import failed"; exit 1; fi
 
1
  #!/bin/bash
2
+ PYTHON="${HOME}/miniforge3/bin/python3"
3
  cd "$(dirname "$0")/.."
4
  echo "Checking imports..."
5
+ $PYTHON -c "import app" 2>&1
6
  if [ $? -eq 0 ]; then echo "βœ… imports OK"; else echo "❌ import failed"; exit 1; fi
scripts/check_sdk.sh CHANGED
@@ -1,12 +1,13 @@
1
  #!/bin/bash
 
2
  cd "$(dirname "$0")/.."
3
- ~/miniforge3/bin/python3 - <<'EOF'
4
  import re, subprocess, sys
5
  sdk = re.search(r'sdk_version: "(.+?)"', open('README.md').read()).group(1)
6
- out = subprocess.check_output(['/Users/uplab/miniforge3/bin/pip','show','gradio']).decode()
7
- ver = re.search(r'Version: (.+)', out).group(1)
8
  if sdk != ver:
9
  print(f'❌ MISMATCH: README sdk_version={sdk} but local gradio={ver}')
10
  sys.exit(1)
11
  print(f'βœ… sdk_version {sdk} matches local gradio')
12
- EOF
 
1
  #!/bin/bash
2
+ PYTHON="${HOME}/miniforge3/bin/python3"
3
  cd "$(dirname "$0")/.."
4
+ $PYTHON - <<'PYEOF'
5
  import re, subprocess, sys
6
  sdk = re.search(r'sdk_version: "(.+?)"', open('README.md').read()).group(1)
7
+ import importlib.metadata
8
+ ver = importlib.metadata.version('gradio')
9
  if sdk != ver:
10
  print(f'❌ MISMATCH: README sdk_version={sdk} but local gradio={ver}')
11
  sys.exit(1)
12
  print(f'βœ… sdk_version {sdk} matches local gradio')
13
+ PYEOF
scripts/dev.sh CHANGED
@@ -6,4 +6,4 @@ echo "=== 2/4 Imports ===" && bash "$DIR/check_imports.sh"
6
  echo "=== 3/4 SDK ===" && bash "$DIR/check_sdk.sh"
7
  echo "=== 4/4 Run ===" && bash "$DIR/run.sh"
8
  echo ""
9
- echo "App is running. Now run: bash scripts/test.sh"
 
6
  echo "=== 3/4 SDK ===" && bash "$DIR/check_sdk.sh"
7
  echo "=== 4/4 Run ===" && bash "$DIR/run.sh"
8
  echo ""
9
+ echo "App is running. Run: bash scripts/test.sh"
scripts/run.sh CHANGED
@@ -1,23 +1,31 @@
1
  #!/bin/bash
 
 
2
  cd "$(dirname "$0")/.."
3
- # Kill ALL running instances (including stale ones on previous ports)
4
- pkill -f "python3 app.py" 2>/dev/null
5
- pkill -f "miniforge3.*app.py" 2>/dev/null
6
- sleep 2
7
- # Force-kill anything still holding Gradio ports
8
- for PORT in 7860 7861 7862 7863 7864 7865; do
9
- PID=$(lsof -ti :$PORT 2>/dev/null)
10
- [ -n "$PID" ] && kill -9 $PID 2>/dev/null
11
- done
12
- sleep 1
13
- ~/miniforge3/bin/python3 app.py > /tmp/numzoo.log 2>&1 &
 
 
 
14
  echo "Starting app..."
15
  sleep 10
16
- PORT=$(lsof -i :7860 -i :7861 -i :7862 -i :7863 -i :7864 -i :7865 2>/dev/null | grep LISTEN | tail -1 | grep -oE '786[0-9]')
 
 
17
  if [ -z "$PORT" ]; then
18
- echo "❌ App failed to start. Logs:"
19
- cat /tmp/numzoo.log
20
- exit 1
21
  fi
 
 
22
  echo "βœ… App running on http://localhost:$PORT"
23
- echo $PORT > /tmp/numzoo.port
 
1
  #!/bin/bash
2
+ PYTHON="${HOME}/miniforge3/bin/python3"
3
+ PORT_FILE="/tmp/numzoo.port"
4
  cd "$(dirname "$0")/.."
5
+
6
+ # Kill the previously running instance using the saved port
7
+ if [ -f "$PORT_FILE" ]; then
8
+ OLD_PORT=$(cat "$PORT_FILE")
9
+ OLD_PID=$(lsof -ti :$OLD_PORT 2>/dev/null)
10
+ if [ -n "$OLD_PID" ]; then
11
+ echo "Killing previous instance on port $OLD_PORT (pid $OLD_PID)..."
12
+ kill -9 $OLD_PID 2>/dev/null
13
+ sleep 1
14
+ fi
15
+ rm -f "$PORT_FILE"
16
+ fi
17
+
18
+ $PYTHON app.py > /tmp/numzoo.log 2>&1 &
19
  echo "Starting app..."
20
  sleep 10
21
+
22
+ PORT=$(lsof -i :7860 -i :7861 -i :7862 -i :7863 -i :7864 -i :7865 2>/dev/null \
23
+ | grep LISTEN | tail -1 | grep -oE '786[0-9]')
24
  if [ -z "$PORT" ]; then
25
+ echo "❌ App failed to start. Logs:"
26
+ cat /tmp/numzoo.log
27
+ exit 1
28
  fi
29
+
30
+ echo $PORT > "$PORT_FILE"
31
  echo "βœ… App running on http://localhost:$PORT"
 
scripts/syntax.sh CHANGED
@@ -1,6 +1,7 @@
1
  #!/bin/bash
 
2
  cd "$(dirname "$0")/.."
3
- ~/miniforge3/bin/python3 -c "
4
  import ast, sys
5
  for f in ['app.py','image_generator.py','math_engine.py']:
6
  try:
 
1
  #!/bin/bash
2
+ PYTHON="${HOME}/miniforge3/bin/python3"
3
  cd "$(dirname "$0")/.."
4
+ $PYTHON -c "
5
  import ast, sys
6
  for f in ['app.py','image_generator.py','math_engine.py']:
7
  try:
scripts/test.sh CHANGED
@@ -1,6 +1,9 @@
1
  #!/bin/bash
2
- cd "$(dirname "$0")/.."
3
- PORT=$(cat /tmp/numzoo.port 2>/dev/null || echo "7864")
4
- # Update port in test file
5
- sed -i '' "s|http://localhost:[0-9]*/|http://localhost:$PORT/|g" /Users/uplab/projects/puppeteer/test_lovemath.mjs
6
- arch -arm64 /bin/zsh -c "source ~/.nvm/nvm.sh && nvm use 20 && cd /Users/uplab/projects/puppeteer && node test_lovemath.mjs"
 
 
 
 
1
  #!/bin/bash
2
+ PORT_FILE="/tmp/numzoo.port"
3
+ PUPPETEER_DIR="$(dirname "$0")/../../puppeteer"
4
+ TEST_SCRIPT="$PUPPETEER_DIR/test_lovemath.mjs"
5
+
6
+ PORT=$(cat "$PORT_FILE" 2>/dev/null || echo "7860")
7
+ sed -i '' "s|http://localhost:[0-9]*/|http://localhost:$PORT/|g" "$TEST_SCRIPT"
8
+
9
+ arch -arm64 /bin/zsh -c "source ~/.nvm/nvm.sh && nvm use 20 && cd '$PUPPETEER_DIR' && node test_lovemath.mjs"