#!/bin/bash # Reset database and initialize Alembic from scratch echo "=== Database Reset Script ===" echo "This will drop all tables and reinitialize with Alembic" echo "" read -p "Are you sure? (type 'yes' to continue): " confirm if [ "$confirm" != "yes" ]; then echo "Aborted." exit 1 fi echo "" echo "Step 1: Dropping all tables in the database..." echo "Connect to your database and run:" echo "" echo " -- For PostgreSQL:" echo " DROP SCHEMA public CASCADE;" echo " CREATE SCHEMA public;" echo " GRANT ALL ON SCHEMA public TO ;" echo " GRANT ALL ON SCHEMA public TO public;" echo "" echo " -- Or if using a custom schema (e.g., alpinebits):" echo " DROP SCHEMA alpinebits CASCADE;" echo " CREATE SCHEMA alpinebits;" echo "" echo "Press Enter after you've run the SQL commands..." read echo "" echo "Step 2: Running Alembic migrations..." uv run alembic upgrade head if [ $? -eq 0 ]; then echo "" echo "=== Success! ===" echo "Database has been reset and migrations applied." echo "" echo "Current migration status:" uv run alembic current else echo "" echo "=== Error ===" echo "Migration failed. Check the error messages above." exit 1 fi