fix(client): resolve hermes_host 0.0.0.0 bind addresses to dialable server host during auto-enrollment
CI Test Suite / Run Component Tests & Pipeline Verification (push) Failing after 15s

This commit is contained in:
2026-09-25 22:44:20 +02:00
parent 2e10aa4819
commit e01421ea8c
3 changed files with 11 additions and 2 deletions
+2
View File
@@ -334,6 +334,8 @@ def send_encrypted_logs_over_socket(config: dict, logs: list):
hub_url = None
if enrollment_secret:
hermes_host = config.get("hermes_host", server_host)
if hermes_host in ("0.0.0.0", "::", None):
hermes_host = server_host if server_host not in ("0.0.0.0", "::", None) else "127.0.0.1"
hermes_port = config.get("hermes_port", 8443)
hub_url = f"http://{hermes_host}:{hermes_port}"
try:
+7 -2
View File
@@ -391,7 +391,7 @@ def generate_client_profile_dict(
"generated_at": datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S UTC"),
"server_host": server_host,
"server_port": int(server_port),
"hermes_host": cfg.get("hermes_host", server_host),
"hermes_host": server_host if cfg.get("hermes_host") in ("0.0.0.0", "::", None) else cfg.get("hermes_host", server_host),
"hermes_port": int(cfg.get("hermes_port", 8443)),
"enrollment_secret": cfg.get("enrollment_secret", ""),
"server_fingerprint": cfg.get("server_fingerprint", ""),
@@ -413,10 +413,15 @@ def create_client_config(
"""Creates a client configuration file containing the server address, auth token, and encryption-only key/fingerprint."""
server_conf = load_or_init_config(config_path)
effective_hermes_host = hermes_host
if not effective_hermes_host:
cfg_hermes = server_conf.get("hermes_host")
effective_hermes_host = server_host if cfg_hermes in ("0.0.0.0", "::", None) else cfg_hermes
client_conf = {
"server_host": server_host,
"server_port": server_port,
"hermes_host": hermes_host or server_conf.get("hermes_host", "127.0.0.1"),
"hermes_host": effective_hermes_host,
"hermes_port": hermes_port or server_conf.get("hermes_port", 8443),
"enrollment_secret": server_conf.get("enrollment_secret"),
"cert_dir": "certs",
+2
View File
@@ -301,6 +301,8 @@ def send_encrypted_logs_over_socket(config: dict, logs: list):
hub_url = None
if enrollment_secret:
hermes_host = config.get("hermes_host", server_host)
if hermes_host in ("0.0.0.0", "::", None):
hermes_host = server_host if server_host not in ("0.0.0.0", "::", None) else "127.0.0.1"
hermes_port = config.get("hermes_port", 8443)
hub_url = f"http://{hermes_host}:{hermes_port}"
try: