Files
kooltab-backoffice/scripts/setup.sh
T
2026-09-20 12:20:55 +02:00

40 lines
1.3 KiB
Bash

#!/bin/sh
# KoolTab Production Setup
# Usage: ./scripts/setup.sh "My Venue" admin@myvenue.com mypassword
#
# Or with env vars:
# SETUP_VENUE_NAME="My Venue" SETUP_ADMIN_EMAIL="admin@myvenue.com" SETUP_ADMIN_PASSWORD="mypassword" ./scripts/setup.sh
VENUE_NAME="${SETUP_VENUE_NAME:-$1}"
ADMIN_EMAIL="${SETUP_ADMIN_EMAIL:-$2}"
ADMIN_PASSWORD="${SETUP_ADMIN_PASSWORD:-$3}"
if [ -z "$VENUE_NAME" ] || [ -z "$ADMIN_EMAIL" ] || [ -z "$ADMIN_PASSWORD" ]; then
echo "Usage: $0 \"Venue Name\" admin@example.com password"
echo " or: SETUP_VENUE_NAME=... SETUP_ADMIN_EMAIL=... SETUP_ADMIN_PASSWORD=... $0"
exit 1
fi
echo "=== KoolTab Production Setup ==="
echo ""
echo " Venue: $VENUE_NAME"
echo " Admin: $ADMIN_EMAIL"
echo ""
# Step 1: Apply database schema
echo "[1/3] Applying database schema..."
npx prisma db push --accept-data-loss 2>&1 || { echo "FAILED"; exit 1; }
echo " ✓ Schema applied"
# Step 2: Generate Prisma client
echo "[2/3] Generating Prisma client..."
npx prisma generate 2>&1 || { echo "FAILED"; exit 1; }
echo " ✓ Client generated"
# Step 3: Seed with your data
echo "[3/3] Seeding database..."
SETUP_VENUE_NAME="$VENUE_NAME" SETUP_ADMIN_EMAIL="$ADMIN_EMAIL" SETUP_ADMIN_PASSWORD="$ADMIN_PASSWORD" \
node prisma/setup.js || { echo "FAILED"; exit 1; }
echo ""
echo "Setup complete. Login at https://kooltab.com"