Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/api.clients.load_balancers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 2 additions & 0 deletions hcloud/load_balancers/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
LoadBalancerAlgorithm,
LoadBalancerHealtCheckHttp,
LoadBalancerHealthCheck,
LoadBalancerHealthCheckHttp,
LoadBalancerService,
LoadBalancerServiceHttp,
LoadBalancerTarget,
Expand All @@ -33,6 +34,7 @@
"LoadBalancer",
"LoadBalancerAlgorithm",
"LoadBalancerHealtCheckHttp",
"LoadBalancerHealthCheckHttp",
"LoadBalancerHealthCheck",
"LoadBalancerService",
"LoadBalancerServiceHttp",
Expand Down
4 changes: 2 additions & 2 deletions hcloud/load_balancers/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
IPv6Network,
LoadBalancer,
LoadBalancerAlgorithm,
LoadBalancerHealtCheckHttp,
LoadBalancerHealthCheck,
LoadBalancerHealthCheckHttp,
LoadBalancerService,
LoadBalancerServiceHttp,
LoadBalancerTarget,
Expand Down Expand Up @@ -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"],
Expand Down
34 changes: 30 additions & 4 deletions hcloud/load_balancers/domain.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from __future__ import annotations

import warnings
from typing import TYPE_CHECKING, Any, Literal

from dateutil.parser import isoparse
Expand Down Expand Up @@ -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
"""

Expand All @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -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

Expand Down