74 lines
2.0 KiB
Bash
Executable File
74 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Quick Fix Script for Portfolio Database
|
|
# This script creates the activity_status table needed for n8n integration
|
|
|
|
set -e
|
|
|
|
echo "🔧 Portfolio Database Quick Fix"
|
|
echo "================================"
|
|
echo ""
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Check if .env.local exists
|
|
if [ ! -f .env.local ]; then
|
|
echo -e "${RED}❌ Error: .env.local not found${NC}"
|
|
echo "Please create .env.local with DATABASE_URL"
|
|
exit 1
|
|
fi
|
|
|
|
# Load DATABASE_URL from .env.local
|
|
export $(grep -v '^#' .env.local | xargs)
|
|
|
|
if [ -z "$DATABASE_URL" ]; then
|
|
echo -e "${RED}❌ Error: DATABASE_URL not found in .env.local${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${GREEN}✓ Found DATABASE_URL${NC}"
|
|
echo ""
|
|
|
|
# Extract database name from DATABASE_URL
|
|
DB_NAME=$(echo $DATABASE_URL | sed -n 's/.*\/\([^?]*\).*/\1/p')
|
|
echo "📦 Database: $DB_NAME"
|
|
echo ""
|
|
|
|
# Run the migration
|
|
echo "🚀 Creating activity_status table..."
|
|
echo ""
|
|
|
|
psql "$DATABASE_URL" -f prisma/migrations/create_activity_status.sql
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo ""
|
|
echo -e "${GREEN}✅ SUCCESS! Migration completed${NC}"
|
|
echo ""
|
|
echo "Verifying table..."
|
|
psql "$DATABASE_URL" -c "\d activity_status" | head -20
|
|
echo ""
|
|
echo "Checking default row..."
|
|
psql "$DATABASE_URL" -c "SELECT id, updated_at FROM activity_status LIMIT 1;"
|
|
echo ""
|
|
echo -e "${GREEN}🎉 All done! Your database is ready.${NC}"
|
|
echo ""
|
|
echo "Next steps:"
|
|
echo " 1. Restart your Next.js dev server: npm run dev"
|
|
echo " 2. Visit http://localhost:3000"
|
|
echo " 3. The activity feed should now work without errors"
|
|
else
|
|
echo ""
|
|
echo -e "${RED}❌ Migration failed${NC}"
|
|
echo ""
|
|
echo "Troubleshooting:"
|
|
echo " 1. Ensure PostgreSQL is running: pg_isready"
|
|
echo " 2. Check your DATABASE_URL in .env.local"
|
|
echo " 3. Verify database exists: psql -l | grep $DB_NAME"
|
|
echo " 4. Try manual migration: psql $DB_NAME -f prisma/migrations/create_activity_status.sql"
|
|
exit 1
|
|
fi
|