Update.
This commit is contained in:
parent
e5d155e124
commit
7e8ae1632d
10
Makefile
10
Makefile
@ -5,17 +5,21 @@ GUNICORN=./.venv/bin/gunicorn
|
||||
GUNICORN_WORKERS = 1
|
||||
PORT = 8081
|
||||
|
||||
python:
|
||||
$(PYTHON)
|
||||
|
||||
|
||||
shell:
|
||||
.venv/bin/snek shell
|
||||
|
||||
dump:
|
||||
@$(PYTHON) -m snek.dump
|
||||
|
||||
build:
|
||||
|
||||
serve: run
|
||||
|
||||
|
||||
run:
|
||||
.venv/usr/bin/snek
|
||||
.venv/bin/snek serve
|
||||
#$(GUNICORN) -w $(GUNICORN_WORKERS) -k aiohttp.worker.GunicornWebWorker snek.gunicorn:app --bind 0.0.0.0:$(PORT) --reload
|
||||
|
||||
install: ubuntu
|
||||
|
@ -1,40 +1,32 @@
|
||||
import argparse
|
||||
import click
|
||||
import uvloop
|
||||
from aiohttp import web
|
||||
import asyncio
|
||||
from snek.app import Application
|
||||
from IPython import start_ipython
|
||||
|
||||
@click.group()
|
||||
def cli():
|
||||
pass
|
||||
|
||||
@cli.command()
|
||||
@click.option('--port', default=8081, show_default=True, help='Port to run the application on')
|
||||
@click.option('--host', default='0.0.0.0', show_default=True, help='Host to run the application on')
|
||||
@click.option('--db_path', default='snek.db', show_default=True, help='Database path for the application')
|
||||
def serve(port, host, db_path):
|
||||
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
||||
web.run_app(
|
||||
Application(db_path=f"sqlite:///{db_path}"), port=port, host=host
|
||||
)
|
||||
|
||||
@cli.command()
|
||||
@click.option('--db_path', default='snek.db', show_default=True, help='Database path for the application')
|
||||
def shell(db_path):
|
||||
app = Application(db_path=f"sqlite:///{db_path}")
|
||||
start_ipython(argv=[], user_ns={'app': app})
|
||||
|
||||
def main():
|
||||
|
||||
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
||||
|
||||
parser = argparse.ArgumentParser(description="Run the web application.")
|
||||
parser.add_argument(
|
||||
"--port",
|
||||
type=int,
|
||||
default=8081,
|
||||
help="Port to run the application on (default: 8081)",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--host",
|
||||
type=str,
|
||||
default="0.0.0.0",
|
||||
help="Host to run the application on (default: 0.0.0.0)",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--db_path",
|
||||
type=str,
|
||||
default="snek.db",
|
||||
help="Database path for the application (default: sqlite:///snek.db)",
|
||||
)
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
web.run_app(
|
||||
Application(db_path="sqlite:///" + args.db_path), port=args.port, host=args.host
|
||||
)
|
||||
|
||||
cli()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
Loading…
Reference in New Issue
Block a user