20 lines
624 B
Python
20 lines
624 B
Python
"""Compatibility facade for SQLAlchemy-backed cloud persistence."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from pathlib import Path
|
|
|
|
from sqlalchemy import create_engine
|
|
|
|
from cloud.sql_repository import SQLAlchemyCloudRepository
|
|
|
|
|
|
class CloudStore(SQLAlchemyCloudRepository):
|
|
"""Preserve the historical ``CloudStore(path)`` SQLite API."""
|
|
|
|
def __init__(self, db_path: str | Path = "cloud/cloud.sqlite3") -> None:
|
|
self.db_path = Path(db_path)
|
|
self.db_path.parent.mkdir(parents=True, exist_ok=True)
|
|
engine = create_engine(f"sqlite:///{self.db_path.as_posix()}")
|
|
super().__init__(engine)
|