32 lines
804 B
Python
32 lines
804 B
Python
#!/usr/bin/env python3
|
|
"""Mock auth service for auth_request PMI test."""
|
|
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
|
|
from pathlib import Path
|
|
|
|
MODE_FILE = Path("/auth-mode/mode")
|
|
|
|
|
|
def current_mode() -> int:
|
|
if MODE_FILE.exists():
|
|
try:
|
|
return int(MODE_FILE.read_text().strip())
|
|
except ValueError:
|
|
pass
|
|
return 200
|
|
|
|
|
|
class AuthHandler(BaseHTTPRequestHandler):
|
|
def do_GET(self):
|
|
code = current_mode()
|
|
self.send_response(code)
|
|
self.send_header("Content-Type", "text/plain")
|
|
self.end_headers()
|
|
self.wfile.write(f"auth-{code}\n".encode())
|
|
|
|
def log_message(self, fmt, *args):
|
|
pass
|
|
|
|
|
|
if __name__ == "__main__":
|
|
ThreadingHTTPServer(("0.0.0.0", 9999), AuthHandler).serve_forever()
|