| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #!/bin/bash
- set -e
- echo "🚀 Starting evals web service..."
- wait_for_db() {
- echo "⏳ Waiting for database..."
- # postgresql://user:password@host:port/database
- DB_HOST=$(echo $DATABASE_URL | sed -n 's/.*@\([^:]*\):.*/\1/p')
- DB_PORT=$(echo $DATABASE_URL | sed -n 's/.*:\([0-9]*\)\/.*/\1/p')
- DB_USER=$(echo $DATABASE_URL | sed -n 's/.*\/\/\([^:]*\):.*/\1/p')
- DB_NAME=$(echo $DATABASE_URL | sed -n 's/.*\/\([^?]*\).*/\1/p')
- DB_HOST=${DB_HOST:-db}
- DB_PORT=${DB_PORT:-5432}
- DB_USER=${DB_USER:-postgres}
- DB_NAME=${DB_NAME:-evals_development}
- until pg_isready -h "$DB_HOST" -p "$DB_PORT" -U "$DB_USER" -d "$DB_NAME" > /dev/null 2>&1; do
- echo "⏳ Database not ready yet, waiting 2 seconds..."
- sleep 2
- done
-
- echo "✅ Database is ready"
- }
- run_migrations() {
- echo "🔄 Running database migrations..."
- if pnpm --filter @roo-code/evals db:migrate; then
- echo "✅ Database migrations completed successfully!"
- else
- echo "❌ Database migration failed!"
- exit 1
- fi
- }
- main() {
- wait_for_db
- run_migrations
- echo "🌐 Starting web service..."
- pnpm --filter @roo-code/web-evals start
- }
- main "$@"
|