@@ -45,6 +45,7 @@ def __init__(
4545 otel_exporter_oltp_protocol : str | None = None ,
4646 worker_healthcheck_port : int | None = None ,
4747 worker_healthcheck_enabled : bool | None = None ,
48+ worker_preset_labels : dict [str , str ] = {},
4849 ):
4950 self .tenant_id = tenant_id
5051 self .tls_config = tls_config
@@ -61,6 +62,7 @@ def __init__(
6162 self .otel_exporter_oltp_protocol = otel_exporter_oltp_protocol
6263 self .worker_healthcheck_port = worker_healthcheck_port
6364 self .worker_healthcheck_enabled = worker_healthcheck_enabled
65+ self .worker_preset_labels = worker_preset_labels
6466
6567 if not self .logInterceptor :
6668 self .logInterceptor = getLogger ()
@@ -184,6 +186,16 @@ def get_config_value(key, env_var):
184186 == "True"
185187 )
186188
189+ # Add preset labels to the worker config
190+ worker_preset_labels : dict [str , str ] = defaults .worker_preset_labels
191+
192+ autoscaling_target = get_config_value (
193+ "autoscaling_target" , "HATCHET_CLIENT_AUTOSCALING_TARGET"
194+ )
195+
196+ if autoscaling_target :
197+ worker_preset_labels ["hatchet-autoscaling-target" ] = autoscaling_target
198+
187199 return ClientConfig (
188200 tenant_id = tenant_id ,
189201 tls_config = tls_config ,
@@ -201,6 +213,7 @@ def get_config_value(key, env_var):
201213 otel_exporter_oltp_protocol = otel_exporter_oltp_protocol ,
202214 worker_healthcheck_port = worker_healthcheck_port ,
203215 worker_healthcheck_enabled = worker_healthcheck_enabled ,
216+ worker_preset_labels = worker_preset_labels ,
204217 )
205218
206219 def _load_tls_config (self , tls_data : Dict , host_port ) -> ClientTLSConfig :
0 commit comments