← back to Nineoh Guide
db/setup-prod.sh
21 lines
#!/usr/bin/env bash
# One-shot: build + populate a fresh production database (Neon / Vercel Postgres).
# Usage: DATABASE_URL="postgres://…neon…" bash db/setup-prod.sh
# Idempotent-ish: schema uses IF NOT EXISTS; ingest scripts skip/dedupe on re-run.
set -euo pipefail
: "${DATABASE_URL:?Set DATABASE_URL to the Neon/Vercel Postgres connection string}"
cd "$(dirname "$0")/.."
echo "1/9 schema" ; psql "$DATABASE_URL" -f db/schema.sql >/dev/null
echo "2/9 seed show" ; node db/seed.mjs
echo "3/9 episodes (TVmaze)" ; node db/ingest-tvmaze.mjs
echo "4/9 cast names (TVmaze)" ; node db/ingest-cast.mjs
echo "5/9 cast bios" ; node db/apply-bios.mjs
echo "6/9 recaps (all seasons)" ; node db/apply-recaps.mjs
echo "7/9 cast photos (Wikimedia, license-checked)" ; node db/ingest-wikimedia-images.mjs
echo "8/9 Beverly Hills photos" ; node db/ingest-beverlyhills-photos.mjs
echo "9/9 news index (Google News RSS)" ; node db/ingest-news.mjs
echo "✅ production database populated."