Skip to content

Commit

Permalink
added waitress for production
Browse files Browse the repository at this point in the history
  • Loading branch information
Barakudum committed Jan 29, 2024
1 parent db77c32 commit ce21e9e
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 7 deletions.
1 change: 1 addition & 0 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ ffmpeg-python = "*"
python-magic = "*"
config-library = {extras = ["yaml"], version = "*"}
flask-compress = "*"
waitress = "*"

[dev-packages]
better-exceptions = "*"
Expand Down
10 changes: 9 additions & 1 deletion Pipfile.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 15 additions & 6 deletions src/jarklin/_commands/web/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
def run() -> None:
import flask
import secrets
from werkzeug.wrappers import Response
from werkzeug.middleware.dispatcher import DispatcherMiddleware
from werkzeug.middleware.proxy_fix import ProxyFix
from .._get_config import get_config
Expand All @@ -19,6 +18,7 @@ def run() -> None:
if not baseurl.startswith("/"):
raise ValueError("web.baseurl must start with /")
if baseurl != "/":
from werkzeug.wrappers import Response
app.wsgi_app = DispatcherMiddleware(
Response('Not Found', status=404),
{baseurl: app.wsgi_app},
Expand Down Expand Up @@ -59,8 +59,17 @@ def make_session_permanent() -> None:
x_prefix=proxy_fix.getint('x_forwarded_prefix', fallback=0),
)

app.run(
host=config.getstr('web', 'host', fallback=None),
port=config.getint('web', 'port', fallback=None),
debug=config.getboolean('web', 'debug', fallback=False),
)
if config.getboolean('web', 'debug', fallback=False):
app.run(
debug=True,
# host=config.getstr('web', 'host', fallback=None),
# port=config.getint('web', 'port', fallback=None),
**config.get('web', 'server', fallback={})
)
else:
import waitress
waitress.serve(
app=app,
ident="jarklin",
**config.get('web', 'server', fallback={})
)

0 comments on commit ce21e9e

Please sign in to comment.