#!/usr/bin/env python3 """ Initialize the inventory service database. Creates all tables and performs initial setup. """ import asyncio import logging import os import sqlalchemy as sa from database import Base, DATABASE_URL, create_indexes logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) async def init_database(): """Initialize database tables and indexes.""" try: # Create engine engine = sa.create_engine(DATABASE_URL) # Create all tables logger.info("Creating database tables...") Base.metadata.create_all(engine) # Create indexes logger.info("Creating performance indexes...") create_indexes(engine) logger.info("Database initialization completed successfully") except Exception as e: logger.error(f"Database initialization failed: {e}") raise if __name__ == "__main__": asyncio.run(init_database())