From eb53e79f9c236bfa766b9e9fc5968bc72acaf5ad Mon Sep 17 00:00:00 2001 From: jo Date: Wed, 25 Jun 2025 09:56:02 +0200 Subject: [PATCH] fix: typo in `LoadBalancerHealthCheckHttp` class name --- docs/api.clients.load_balancers.rst | 2 +- hcloud/load_balancers/__init__.py | 2 ++ hcloud/load_balancers/client.py | 4 ++-- hcloud/load_balancers/domain.py | 34 +++++++++++++++++++++++++---- 4 files changed, 35 insertions(+), 7 deletions(-) diff --git a/docs/api.clients.load_balancers.rst b/docs/api.clients.load_balancers.rst index 771eadfc..dfb2780a 100644 --- a/docs/api.clients.load_balancers.rst +++ b/docs/api.clients.load_balancers.rst @@ -20,7 +20,7 @@ LoadBalancerClient .. autoclass:: hcloud.load_balancers.domain.LoadBalancerHealthCheck :members: -.. autoclass:: hcloud.load_balancers.domain.LoadBalancerHealtCheckHttp +.. autoclass:: hcloud.load_balancers.domain.LoadBalancerHealthCheckHttp :members: .. autoclass:: hcloud.load_balancers.domain.LoadBalancerTarget diff --git a/hcloud/load_balancers/__init__.py b/hcloud/load_balancers/__init__.py index 33745163..f84c7e20 100644 --- a/hcloud/load_balancers/__init__.py +++ b/hcloud/load_balancers/__init__.py @@ -14,6 +14,7 @@ LoadBalancerAlgorithm, LoadBalancerHealtCheckHttp, LoadBalancerHealthCheck, + LoadBalancerHealthCheckHttp, LoadBalancerService, LoadBalancerServiceHttp, LoadBalancerTarget, @@ -33,6 +34,7 @@ "LoadBalancer", "LoadBalancerAlgorithm", "LoadBalancerHealtCheckHttp", + "LoadBalancerHealthCheckHttp", "LoadBalancerHealthCheck", "LoadBalancerService", "LoadBalancerServiceHttp", diff --git a/hcloud/load_balancers/client.py b/hcloud/load_balancers/client.py index aeeeb879..2de1c2d7 100644 --- a/hcloud/load_balancers/client.py +++ b/hcloud/load_balancers/client.py @@ -20,8 +20,8 @@ IPv6Network, LoadBalancer, LoadBalancerAlgorithm, - LoadBalancerHealtCheckHttp, LoadBalancerHealthCheck, + LoadBalancerHealthCheckHttp, LoadBalancerService, LoadBalancerServiceHttp, LoadBalancerTarget, @@ -139,7 +139,7 @@ def __init__(self, client: LoadBalancersClient, data: dict, complete: bool = Tru timeout=service["health_check"]["timeout"], ) if tmp_service.health_check.protocol != "tcp": - tmp_service.health_check.http = LoadBalancerHealtCheckHttp( + tmp_service.health_check.http = LoadBalancerHealthCheckHttp( domain=service["health_check"]["http"]["domain"], path=service["health_check"]["http"]["path"], response=service["health_check"]["http"]["response"], diff --git a/hcloud/load_balancers/domain.py b/hcloud/load_balancers/domain.py index d1a370ae..fb047a19 100644 --- a/hcloud/load_balancers/domain.py +++ b/hcloud/load_balancers/domain.py @@ -1,5 +1,6 @@ from __future__ import annotations +import warnings from typing import TYPE_CHECKING, Any, Literal from dateutil.parser import isoparse @@ -256,7 +257,7 @@ class LoadBalancerHealthCheck(BaseDomain): Timeout in sec after a try is assumed as timeout :param retries: int Retries we perform until we assume a target as unhealthy - :param http: LoadBalancerHealtCheckHttp + :param http: LoadBalancerHealthCheckHttp HTTP Config """ @@ -267,7 +268,7 @@ def __init__( interval: int | None = None, timeout: int | None = None, retries: int | None = None, - http: LoadBalancerHealtCheckHttp | None = None, + http: LoadBalancerHealthCheckHttp | None = None, ): self.protocol = protocol self.port = port @@ -277,8 +278,8 @@ def __init__( self.http = http -class LoadBalancerHealtCheckHttp(BaseDomain): - """LoadBalancerHealtCheckHttp Domain +class LoadBalancerHealthCheckHttp(BaseDomain): + """LoadBalancerHealthCheckHttp Domain :param domain: str Domain name to send in HTTP request. Can be null: In that case we will not send a domain name @@ -307,6 +308,31 @@ def __init__( self.tls = tls +class LoadBalancerHealtCheckHttp(LoadBalancerHealthCheckHttp): + """ + Kept for backward compatibility. + + .. deprecated:: 2.5.4 + Use :class:``hcloud.load_balancers.domain.LoadBalancerHealthCheckHttp`` instead. + """ + + def __init__( + self, + domain: str | None = None, + path: str | None = None, + response: str | None = None, + status_codes: list | None = None, + tls: bool | None = None, + ): + warnings.warn( + "The 'hcloud.load_balancers.domain.LoadBalancerHealtCheckHttp' class is deprecated, please use the " + "'hcloud.load_balancers.domain.LoadBalancerHealthCheckHttp' class instead.", + DeprecationWarning, + stacklevel=2, + ) + super().__init__(domain, path, response, status_codes, tls) + + class LoadBalancerTarget(BaseDomain): """LoadBalancerTarget Domain