Skip to content
This repository was archived by the owner on Mar 26, 2025. It is now read-only.

Commit 5877354

Browse files
committed
attempt at fix
bugfix correct type hints for config init snake case tenant_id correctly override url in jwt add fallback server url move fallback to maintain something closer to current behavior unwind unwind drive by add comment
1 parent fd1b150 commit 5877354

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

hatchet_sdk/loader.py

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
from .token import get_addresses_from_jwt, get_tenant_id_from_jwt
88

9-
109
class ClientTLSConfig:
1110
def __init__(
1211
self,
@@ -28,14 +27,14 @@ class ClientConfig:
2827

2928
def __init__(
3029
self,
31-
tenant_id: str = None,
32-
tls_config: ClientTLSConfig = None,
33-
token: str = None,
34-
host_port: str = "localhost:7070",
30+
tenant_id: str | None = None,
31+
tls_config: ClientTLSConfig | None = None,
32+
token: str | None = None,
33+
host_port: str | None = None,
3534
server_url: str = "https://app.dev.hatchet-tools.com",
3635
namespace: str = None,
37-
listener_v2_timeout: int = None,
38-
logger: Logger = None,
36+
listener_v2_timeout: int | None = None,
37+
logger: Logger | None = None,
3938
grpc_max_recv_message_length: int = 4 * 1024 * 1024, # 4MB
4039
grpc_max_send_message_length: int = 4 * 1024 * 1024, # 4MB
4140
):
@@ -87,6 +86,8 @@ def get_config_value(key, env_var):
8786

8887
namespace = get_config_value("namespace", "HATCHET_CLIENT_NAMESPACE")
8988

89+
## TODO: `tenantId` is not an attribute of `ClientConfig`, so `get_config_value` will always return `None`
90+
## if it's not set in the config file or as an environment variable. This should probably be changed to `tenant_id`.
9091
tenant_id = get_config_value("tenantId", "HATCHET_CLIENT_TENANT_ID")
9192
token = get_config_value("token", "HATCHET_CLIENT_TOKEN")
9293
listener_v2_timeout = get_config_value(
@@ -99,7 +100,7 @@ def get_config_value(key, env_var):
99100
"Token must be set via HATCHET_CLIENT_TOKEN environment variable"
100101
)
101102

102-
host_port = get_config_value("hostPort", "HATCHET_CLIENT_HOST_PORT")
103+
host_port = get_config_value("host_port", "HATCHET_CLIENT_HOST_PORT")
103104
server_url: str | None = None
104105

105106
grpc_max_recv_message_length = get_config_value(
@@ -117,7 +118,10 @@ def get_config_value(key, env_var):
117118
if grpc_max_send_message_length:
118119
grpc_max_send_message_length = int(grpc_max_send_message_length)
119120

120-
if not host_port:
121+
if host_port:
122+
# if host_port is set, use it to override the server_url
123+
server_url = host_port
124+
else:
121125
# extract host and port from token
122126
server_url, grpc_broadcast_address = get_addresses_from_jwt(token)
123127
host_port = grpc_broadcast_address

0 commit comments

Comments
 (0)