feat(v0.2.0): data pipeline

This commit is contained in:
0x_n3m0_
2026-01-05 11:34:18 +02:00
parent 2527938680
commit b5e7043df6
23 changed files with 2813 additions and 7 deletions

47
scripts/setup_database.py Executable file
View File

@@ -0,0 +1,47 @@
#!/usr/bin/env python3
"""Initialize database and create tables."""
import argparse
import sys
from pathlib import Path
# Add project root to path
project_root = Path(__file__).parent.parent
sys.path.insert(0, str(project_root))
from src.data.database import init_database # noqa: E402
from src.logging import get_logger # noqa: E402
logger = get_logger(__name__)
def main():
"""Main entry point."""
parser = argparse.ArgumentParser(description="Initialize database and create tables")
parser.add_argument(
"--skip-tables",
action="store_true",
help="Skip table creation (useful for testing connection only)",
)
parser.add_argument(
"--verbose",
"-v",
action="store_true",
help="Enable verbose logging",
)
args = parser.parse_args()
try:
logger.info("Initializing database...")
init_database(create_tables=not args.skip_tables)
logger.info("Database initialization completed successfully")
return 0
except Exception as e:
logger.error(f"Database initialization failed: {e}", exc_info=True)
return 1
if __name__ == "__main__":
sys.exit(main())