| 123456789101112131415161718192021222324 |
- #!/bin/bash
- set -e
- trap 'echo "An error occurred. Exiting..."; exit 1' ERR
- cmd="$@"
- echo "Waiting for PostgreSQL to be ready..."
- until node -e "
- const { Client } = require('pg');
- const c = new Client({ connectionString: process.env.DATABASE_URL });
- c.connect().then(() => { c.end(); process.exit(0); }).catch(() => process.exit(1));
- " 2>/dev/null; do
- echo "PostgreSQL is unavailable - sleeping 2s..."
- sleep 2
- done
- echo "PostgreSQL is ready!"
- echo "Applying database schema..."
- npx prisma db push --accept-data-loss
- echo "Schema applied successfully!"
- echo "Starting application..."
- exec $cmd
|