Add boss seed data pipeline for export and import

Add seeder support for boss battles so new database instances come
pre-populated. Adds --export-bosses CLI flag to dump boss data from the
database to JSON seed files, and loads those files during normal seeding.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 12:36:08 +01:00
parent 76855f4f56
commit 053dece33e
7 changed files with 250 additions and 27 deletions

View File

@@ -1,20 +1,26 @@
"""Entry point for running seeds.
Usage:
python -m app.seeds # Run seed
python -m app.seeds --verify # Run seed + verification
python -m app.seeds # Run seed
python -m app.seeds --verify # Run seed + verification
python -m app.seeds --export-bosses # Export boss data to seed JSON files
"""
import asyncio
import sys
from app.core.database import engine
from app.seeds.run import seed, verify
from app.seeds.run import export_bosses, seed, verify
async def main():
verbose = "--verbose" in sys.argv or "-v" in sys.argv
engine.echo = verbose
if "--export-bosses" in sys.argv:
await export_bosses()
return
await seed()
if "--verify" in sys.argv:
await verify()