#!/usr/bin/env bash set -euo pipefail echo "[start-web] Starting web service..." echo "[start-web] Bun: $(bun --version || true)" cd /app export BUN_INSTALL_CACHE_DIR="${BUN_INSTALL_CACHE_DIR:-/tmp/bun-cache}" mkdir -p "$BUN_INSTALL_CACHE_DIR" echo "[start-web] Using bun cache dir: $BUN_INSTALL_CACHE_DIR" echo "[start-web] Using APP_DIR=$(pwd)" echo "[start-web] NEXT_PUBLIC_APP_URL=${NEXT_PUBLIC_APP_URL:-}" echo "[start-web] NEXT_PUBLIC_CONVEX_URL=${NEXT_PUBLIC_CONVEX_URL:-}" # Bun keeps its store in node_modules/.bun by default; ensure it exists and is writable mkdir -p node_modules/.bun >/dev/null 2>&1 || true # Prisma generate (idempotent) and apply DB migrations echo "[start-web] prisma generate" bun run prisma:generate echo "[start-web] prisma migrate deploy" bunx prisma migrate deploy # Seed Better Auth users safely (ensure-only by default) echo "[start-web] seeding Better Auth users (ensure-only)" bun run auth:seed || true echo "[start-web] launching Next.js" exec bun run start -- --port 3000