"""CLI: create courses and (optionally) a professor account. python -m scripts.seed [--professor prof@uqo.ca] """ from __future__ import annotations import argparse import asyncio from app.core.config import get_settings from app.db import init_db from app.services import courses, users async def main() -> None: ap = argparse.ArgumentParser() ap.add_argument("--professor", help="e-mail to create/promote as professor") args = ap.parse_args() await init_db() await courses.seed_courses() print("Courses seeded:", get_settings().courses) if args.professor: u = await users.get_or_create_user(args.professor, get_settings()) await users.set_role(args.professor, "professor") print("Professor:", u.email) if __name__ == "__main__": asyncio.run(main())