Added argument parser.

This commit is contained in:
retoor 2024-12-14 18:27:52 +01:00
parent 6019a70012
commit 6a4384cbc7

View File

@ -2,7 +2,7 @@ import base64
import json import json
import time import time
import uuid import uuid
import argparse
import dataset import dataset
from aiohttp import web from aiohttp import web
@ -244,7 +244,61 @@ class Application(WebDbApplication):
) )
def create_app(*args, **kwargs): argument_parser = argparse.ArgumentParser("Web service")
app = Application(*args, **kwargs) argument_parser.add_argument(
"--host",
default="0.0.0.0",
required=False
type=str,
help="Host to serve on."
)
argument_parser.add_argument(
"--port",
default=8888,
required=False,
type=int,
help="Port to serve on."
)
argument_parser.add_argument(
"--db-path",
default="sqlite:///:memory:",
required=False,
type=str,
help="SQLAlchemy db url. (e.g. sqlite:///app.db)"
)
argument_parser.add_argument(
"--basic-username",
default=None,
required=False,
type=str,
help="Basic Auth username."
)
argument_parser.add_argument(
"--basic-password",
default=None,
required=False,
type=str,
help="Basic Auth password."
)
argument_parser.add_argument(
"--db-web",
action="store_true",
help="Enable /db/* endpoints",
default=False,
type=bool
)
def create_app(*args, **kwargs):
global argument_parser
args = argument_parser.parse_args()
app = create_app(db_path=args.db_path,basic_username=args.basic_username,basic_password=args.basic_password)
return app
def main():
app = create_app()
return app return app