From 1a702c454a7732c855684dd79a7fcc79679a1995 Mon Sep 17 00:00:00 2001 From: h7x4 Date: Mon, 12 Jan 2026 03:16:25 +0900 Subject: [PATCH] Add `create-db` command --- src/worblehat/main.py | 6 ++++++ src/worblehat/services/argument_parser.py | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/src/worblehat/main.py b/src/worblehat/main.py index edaa53e..e13d1b2 100644 --- a/src/worblehat/main.py +++ b/src/worblehat/main.py @@ -1,3 +1,4 @@ +from worblehat.models import Base import logging from pprint import pformat @@ -67,6 +68,11 @@ def main(): WorblehatCli.run_with_safe_exit_wrapper(sql_session) exit(0) + if args.command == "create-db": + database_url = Config.db_string() + engine = create_engine(database_url) + Base.metadata.create_all(engine) + if args.command == "devscripts": sql_session = _connect_to_database(echo=Config["logging.debug_sql"]) if args.script == "seed-content-for-deadline-daemon": diff --git a/src/worblehat/services/argument_parser.py b/src/worblehat/services/argument_parser.py index db313f0..7d0ee0d 100644 --- a/src/worblehat/services/argument_parser.py +++ b/src/worblehat/services/argument_parser.py @@ -19,6 +19,10 @@ subparsers.add_parser( "deadline-daemon", help="Initialize a single pass of the daemon which sends deadline emails", ) +subparsers.add_parser( + "create-db", + help="Create the database schema in the database specified in the configuration", +) subparsers.add_parser( "cli", help="Start the command line interface",