summaryrefslogtreecommitdiff
path: root/ickapi/main.py
diff options
context:
space:
mode:
authorIvan Dolgov <ivan@dolgov.fi>2019-03-16 15:14:18 +0200
committerIvan Dolgov <ivan@dolgov.fi>2019-03-16 15:33:28 +0200
commit227c1ae67bb80a5e9b9036a9bdb9f11be073669f (patch)
tree66ed50756e86a265c8bf08d0493bcc466c83d026 /ickapi/main.py
parent01bdba935a667e8c1606d6d040086488c82b0e38 (diff)
downloadickapi-227c1ae67bb80a5e9b9036a9bdb9f11be073669f.tar.gz
Initial setupivan/initial
Diffstat (limited to 'ickapi/main.py')
-rw-r--r--ickapi/main.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/ickapi/main.py b/ickapi/main.py
new file mode 100644
index 0000000..c40bf22
--- /dev/null
+++ b/ickapi/main.py
@@ -0,0 +1,38 @@
+"""Main module.
+
+A web server application that can be passed to gunicorn. Also works as
+standalone program (run from project root):
+
+ python ickapi/main.py --host 127.0.0.1 --port 8080
+"""
+
+import argparse
+import logging
+
+import aiohttp
+
+import ickapi
+
+DEFAULT_HOST = '127.0.0.1'
+DEFAULT_PORT = 8080
+
+app = ickapi.create_app()
+
+
+def main():
+ """Run a standalone development server."""
+ logging.basicConfig(level=logging.INFO)
+
+ parser = argparse.ArgumentParser()
+ parser.add_argument('--host', default=None)
+ parser.add_argument('--port', type=int, default=0)
+
+ args = parser.parse_args()
+ host = args.host or DEFAULT_HOST
+ port = args.port or DEFAULT_PORT
+
+ aiohttp.web.run_app(app, host=host, port=port)
+
+
+if __name__ == '__main__':
+ main()