github.com/juju/juju@v0.0.0-20240327075706-a90865de2538/testcharms/charms/network-health/scripts/simple-server.py (about) 1 #!/usr/bin/python3 2 import argparse 3 from http.server import BaseHTTPRequestHandler 4 import socketserver 5 import os 6 7 class SimpleRequestHandler(BaseHTTPRequestHandler): 8 def do_GET(self): 9 self.send_response(200) 10 self.send_header('Content-type','text/plain') 11 self.end_headers() 12 self.wfile.write(bytes("pass", "utf8")) 13 14 15 def parse_args(argv): 16 parser = argparse.ArgumentParser(description="Simple http server.") 17 parser.add_argument( 18 '--port', default=8000, type=int, help='Port to serve on.') 19 20 return parser.parse_args() 21 22 23 def main(argv=None): 24 args = parse_args(argv) 25 server_details = ("", args.port) 26 Handler = SimpleRequestHandler 27 httpd = socketserver.TCPServer(server_details, Handler) 28 try: 29 httpd.serve_forever() 30 except KeyboardInterrupt: 31 print('Caught keyboard interrupt. Exiting.') 32 33 34 if __name__ == '__main__': 35 main()