fix(https-template): wire TLS_CERT/TLS_KEY into make_server ssl_context

Server read the env vars but never passed them to make_server, so it
served plain HTTP and the TLS handshake check timed out in live tests.
This commit is contained in:
2026-05-10 22:39:24 -04:00
parent 54dede5077
commit 6a91858c15

View File

@@ -11,6 +11,7 @@ from __future__ import annotations
import json import json
import logging import logging
import os import os
import ssl
from pathlib import Path from pathlib import Path
from flask import Flask, request, send_from_directory from flask import Flask, request, send_from_directory
@@ -33,6 +34,8 @@ NODE_NAME = os.environ.get("NODE_NAME", "webserver")
SERVICE_NAME = "https" SERVICE_NAME = "https"
LOG_TARGET = os.environ.get("LOG_TARGET", "") LOG_TARGET = os.environ.get("LOG_TARGET", "")
PORT = int(os.environ.get("PORT", "8443")) PORT = int(os.environ.get("PORT", "8443"))
TLS_CERT = os.environ.get("TLS_CERT", "")
TLS_KEY = os.environ.get("TLS_KEY", "")
_SERVER_CHOICES = [ _SERVER_CHOICES = [
"Apache/2.4.41 (Ubuntu)", "Apache/2.4.41 (Ubuntu)",
@@ -158,5 +161,9 @@ class _SilentHandler(WSGIRequestHandler):
if __name__ == "__main__": if __name__ == "__main__":
_log("startup", msg=f"HTTPS server starting as {NODE_NAME}") _log("startup", msg=f"HTTPS server starting as {NODE_NAME}")
start_fp_socket_reader(NODE_NAME, SERVICE_NAME, LOG_TARGET) start_fp_socket_reader(NODE_NAME, SERVICE_NAME, LOG_TARGET)
srv = make_server("127.0.0.1", PORT, app, request_handler=_SilentHandler) ssl_ctx: ssl.SSLContext | None = None
if TLS_CERT and TLS_KEY:
ssl_ctx = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
ssl_ctx.load_cert_chain(TLS_CERT, TLS_KEY)
srv = make_server("127.0.0.1", PORT, app, request_handler=_SilentHandler, ssl_context=ssl_ctx)
srv.serve_forever() srv.serve_forever()