Files
@ e27a45d2b90a
Branch filter:
Location: light9/bin/homepageConfig - annotation
e27a45d2b90a
1.6 KiB
text/plain
suppress some ts warnings on already-broken code
0d295af23c4b 0d295af23c4b 3c523c71da29 0d295af23c4b f066d6e874db 0d295af23c4b 3c523c71da29 70f42f9d6e04 0d295af23c4b 70f42f9d6e04 15f296550447 15f296550447 15f296550447 ac16ec1e6bab e703b3434dbd 7772cc48e016 bfee787d7b5c ec6ec713c276 bfee787d7b5c bfee787d7b5c bfee787d7b5c bfee787d7b5c bfee787d7b5c e703b3434dbd bfee787d7b5c bfee787d7b5c bfee787d7b5c bfee787d7b5c 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 17b268d2b7f3 bfee787d7b5c bfee787d7b5c bfee787d7b5c bfee787d7b5c bfee787d7b5c 0d295af23c4b bfee787d7b5c cec677a84142 7772cc48e016 cec677a84142 cec677a84142 cec677a84142 cec677a84142 cec677a84142 cec677a84142 cec677a84142 a415be4cfac4 bfee787d7b5c 04ed5d134973 cec677a84142 ec6ec713c276 ec6ec713c276 ec6ec713c276 ec6ec713c276 ec6ec713c276 | #!bin/python
from run_local import log
from light9 import showconfig
from light9.namespaces import L9
from urllib.parse import urlparse
log.info('generating config')
graph = showconfig.getGraph()
netHome = graph.value(showconfig.showUri(), L9['networking'])
webServer = graph.value(netHome, L9['webServer'])
if not webServer:
raise ValueError('no %r :webServer' % netHome)
print("listen %s;" % urlparse(webServer).port)
def location(path, server, viteServer):
print(f"""
location = /{path}/metrics {{
rewrite ^/{path}(/.*) $1 break;
proxy_pass {server};
}}
location /{path}/api/ {{
# just the tail part for services
rewrite ^/{path}/api(/.*) $1 break;
proxy_pass {server};
# for websocket
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_buffering off;
}}
location /{path}/ {{
# vite has 'base' to deal with the /{path}/ part of the request
proxy_pass {viteServer};
}}
""")
for role, server in sorted(graph.predicate_objects(netHome)):
if not server.startswith('http') or role == L9['webServer']:
continue
path = graph.value(role, L9['urlPath'])
if not path:
continue
server = server.rstrip('/')
viteServer = server.replace('82', '83') # rewrite this please
location(path, server, viteServer)
showPath = showconfig.showUri().split('/', 3)[-1]
root = showconfig.root()[:-len(showPath)].decode('ascii')
print(f"""
location /{showPath} {{
root {root};
}}""")
|