#!/usr/bin/env bash set -euo pipefail API="${API_URL:-http://localhost/api/v1}" echo "→ Running database migrations..." docker compose exec api alembic upgrade head echo "→ Seeding admin user..." REGISTER_RESP=$(curl -sf -X POST "$API/auth/register" \ -H "Content-Type: application/json" \ -d '{ "email": "admin@rehearsalhub.local", "password": "changeme123!", "display_name": "Admin" }') || echo " Admin user may already exist" echo "→ Logging in to get token..." TOKEN_RESP=$(curl -sf -X POST "$API/auth/login" \ -H "Content-Type: application/json" \ -d '{"email": "admin@rehearsalhub.local", "password": "changeme123!"}') TOKEN=$(echo "$TOKEN_RESP" | python3 -c "import sys,json; print(json.load(sys.stdin)['access_token'])") echo "→ Creating demo band..." curl -sf -X POST "$API/bands" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{ "name": "Demo Band", "slug": "demo-band", "genre_tags": ["rock", "jam"] }' | python3 -m json.tool echo "" echo "✓ Seed complete!" echo " Admin: admin@rehearsalhub.local / changeme123!" echo " API docs: https://${DOMAIN:-localhost}/api/docs"