def serve() -> None: # TODO less logging?? from http.server import HTTPServer, SimpleHTTPRequestHandler Handler = lambda *args: SimpleHTTPRequestHandler( # type: ignore[misc] *args, directory=str(output), ) server_address = ('', 8000) log.info("serving %s", server_address) server = HTTPServer(server_address, Handler) import threading thread = threading.Thread(target=server.serve_forever) # TODO shutdown server on exit?? thread.start()
def __init__(self, docroot, port): super().__init__( ("localhost", port), lambda *args: SimpleHTTPRequestHandler(*args, directory=docroot), )