feat: Projektfundament mit Datenmodell, Migrationen und Seed
- Repo-Struktur für Backend, Frontend, Dokumentation und Gitea-Workflows - FastAPI-Skeleton mit pydantic-settings und RFC-7807-artigem Fehlerformat - Vollständiges Datenmodell (15 Tabellen) als SQLAlchemy-2.0-Modelle - Alembic gegen die Async-Engine inklusive Erstmigration - Idempotenter Seed für den deutschen Kategoriebaum und Standardregeln - Endpunkte /api/health und /api/version - pytest-Infrastruktur mit transaktionsisolierten Fixtures Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014e7t8UpmoVNMtWivY5LiSH
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
"""CLI: Stammdaten seeden – `python -m app.scripts.seed`."""
|
||||
|
||||
import asyncio
|
||||
|
||||
from app.db.session import SessionLocal, engine
|
||||
from app.services.seed import seed_all
|
||||
|
||||
|
||||
async def main() -> None:
|
||||
async with SessionLocal() as session:
|
||||
result = await seed_all(session)
|
||||
await engine.dispose()
|
||||
print(
|
||||
f"Seed fertig: {result['categories']} Kategorien, "
|
||||
f"{result['notification_rules']} Benachrichtigungsregeln neu angelegt."
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user