From 70dfb2c515201217ee7ed92387feb4ed8de98e06 Mon Sep 17 00:00:00 2001 From: Brandon Rozek Date: Wed, 21 Apr 2021 22:55:06 -0400 Subject: [PATCH] Fixed path issue and using gevent production server --- servemaps | 12 +++++++++--- setup.py | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/servemaps b/servemaps index a20d818..0bf132c 100755 --- a/servemaps +++ b/servemaps @@ -2,9 +2,13 @@ """ Small flask server to serve map tiles. """ +from gevent import monkey +monkey.patch_all() +from gevent.pywsgi import WSGIServer from argparse import ArgumentParser -import importlib.util from http import HTTPStatus +from os import getcwd +import importlib.util import errno import os.path import sys @@ -23,7 +27,7 @@ args = vars(parser.parse_args()) # Try to locate mapserver folder -root_path = "mapserver" +root_path = getcwd() + "/mapserver" if not os.path.isdir(root_path): spec_location = importlib.util.find_spec('mapserver') if spec_location is None or spec_location.origin is None: @@ -49,7 +53,9 @@ def index(): if __name__ == '__main__': try: - app.run(port=args['port']) + http_server = WSGIServer(('', args['port']), app) + print(f"Starting map server on http://localhost:{args['port']}") + http_server.serve_forever() except OSError as e: if e.errno == errno.EADDRINUSE: print("Address-Port Combination in use. Is another servemaps running?") diff --git a/setup.py b/setup.py index a775e60..72f5d0c 100644 --- a/setup.py +++ b/setup.py @@ -23,6 +23,6 @@ setup( include_package_data=True, data_files=data_files, scripts=['servemaps'], - install_requires=['Flask~=1.1.2'], + install_requires=['Flask~=1.1.2', 'gevent~=21.1.2'], python_requires='>=3.7' )