from http.server import HTTPServer, BaseHTTPRequestHandler
import ssl
from pathlib import Path
root = Path(__file__).parent
class Handler(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(401)
        self.send_header('WWW-Authenticate', 'Basic realm="Private repository"')
        self.end_headers()
        self.wfile.write(b'Private repository: Git credentials required.\n')
server = HTTPServer(('127.0.0.1', 18443), Handler)
ctx = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
ctx.load_cert_chain(str(root / 'cert.pem'), str(root / 'key.pem'))
server.socket = ctx.wrap_socket(server.socket, server_side=True)
server.serve_forever()
