summaryrefslogtreecommitdiffstats
path: root/ttun_server/__init__.py
blob: d54227a98e3a614baadd95d8b8695f8445374025 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import logging
import os

from fastapi import FastAPI
from starlette.routing import Host, Route, WebSocketRoute

from proxy import app as proxy_app
from ttun_server.endpoints import health, base_endpoints
from ttun_server.websockets import tunnel

logging.basicConfig(level=getattr(logging, os.environ.get('LOG_LEVEL', 'INFO')))

app = FastAPI(
    debug=True,
    routes=[
        WebSocketRoute('/tunnel/', endpoint=tunnel),
        Route('/health/', endpoint=health),
        Host(f'{{subdomain}}.{os.environ['TUNNEL_DOMAIN']}', app=proxy_app)
    ]
)

try:
    from ._version import version
    __version__ = version
except ImportError:
    __version__ = 'development'