import asyncio
import sys
import os

# Add the current directory to sys.path to allow imports from app
sys.path.append(os.path.dirname(os.path.abspath(__file__)))

from dotenv import load_dotenv

load_dotenv()

from app.database import SessionLocal, Base, engine
from app.ingest import ingest_recently_played

# Ensure tables exist
Base.metadata.create_all(bind=engine)

async def main():
    print("Starting manual ingestion...")
    db = SessionLocal()
    try:
        await ingest_recently_played(db)
        print("Ingestion complete.")
    finally:
        db.close()

if __name__ == "__main__":
    asyncio.run(main())
