1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import logging
import os
from starlette.applications import Starlette
from starlette.routing import Route, WebSocketRoute, Host, Router
from ttun_server.endpoints import Proxy, Tunnel, Health
logging.basicConfig(level=getattr(logging, os.environ.get('LOG_LEVEL', 'INFO')))
base_router = Router(routes=[
Route('/health/', Health),
WebSocketRoute('/tunnel/', Tunnel)
])
server = Starlette(
debug=True,
routes=[
Host(os.environ['TUNNEL_DOMAIN'], base_router, 'base'),
Route('/{path:path}', Proxy),
]
)
|