diff --git a/go.mod b/go.mod index ce508716..17989c6d 100644 --- a/go.mod +++ b/go.mod @@ -30,7 +30,7 @@ require ( github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.4 github.com/hashicorp/go-multierror v1.1.1 - github.com/hetznercloud/hcloud-go/v2 v2.49.0 + github.com/hetznercloud/hcloud-go/v2 v2.50.0 github.com/jackc/pgx/v5 v5.11.0 github.com/johannesboyne/gofakes3 v1.2.0 github.com/jwx-go/jwkfetch/v4 v4.0.4 diff --git a/go.sum b/go.sum index 7bd11ba1..5562fd37 100644 --- a/go.sum +++ b/go.sum @@ -276,6 +276,8 @@ github.com/hetznercloud/hcloud-go/v2 v2.48.0 h1:P3biOxqEufOxp2xBEZTZGIl56xK4sFbw github.com/hetznercloud/hcloud-go/v2 v2.48.0/go.mod h1:J9QH6j8pRH0K3+HlqgOlQ8abXagWTD/GpTkfra2et+g= github.com/hetznercloud/hcloud-go/v2 v2.49.0 h1:QXONxfgXIF99PFJknkVw+LrQQB4PB5IbEjEDh4Hfmig= github.com/hetznercloud/hcloud-go/v2 v2.49.0/go.mod h1:J9QH6j8pRH0K3+HlqgOlQ8abXagWTD/GpTkfra2et+g= +github.com/hetznercloud/hcloud-go/v2 v2.50.0 h1:ECWYFFGTU0/ftWjTBDPDtqpqxEbCAJYG9KHWpHPUoDo= +github.com/hetznercloud/hcloud-go/v2 v2.50.0/go.mod h1:J9QH6j8pRH0K3+HlqgOlQ8abXagWTD/GpTkfra2et+g= github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI= diff --git a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/internal/version/version.go b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/internal/version/version.go index 9671c0b0..26be5388 100644 --- a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/internal/version/version.go +++ b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/internal/version/version.go @@ -1,4 +1,4 @@ package version // Version is the library's version following Semantic Versioning. -const Version = "2.49.0" // x-releaser-pleaser-version +const Version = "2.50.0" // x-releaser-pleaser-version diff --git a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/load_balancer.go b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/load_balancer.go index 7f79e204..a4a1fcc7 100644 --- a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/load_balancer.go +++ b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/load_balancer.go @@ -193,10 +193,32 @@ const ( LoadBalancerTargetHealthStatusStatusUnhealthy LoadBalancerTargetHealthStatusStatus = "unhealthy" ) +// LoadBalancerTargetHealthStatusDetail describes additional details about why +// a health check failed. It is only present when the health status is +// unhealthy. +type LoadBalancerTargetHealthStatusDetail string + +const ( + // LoadBalancerTargetHealthStatusDetailUnspecified denotes that the reason for a failed health check is unspecified. + LoadBalancerTargetHealthStatusDetailUnspecified LoadBalancerTargetHealthStatusDetail = "unspecified" + // LoadBalancerTargetHealthStatusDetailLayer4NoConnection denotes that no connection could be established to the target. + LoadBalancerTargetHealthStatusDetailLayer4NoConnection LoadBalancerTargetHealthStatusDetail = "layer4_no_connection" + // LoadBalancerTargetHealthStatusDetailLayer4Timeout denotes that the target did not respond in time. + LoadBalancerTargetHealthStatusDetailLayer4Timeout LoadBalancerTargetHealthStatusDetail = "layer4_timeout" + // LoadBalancerTargetHealthStatusDetailLayer7Timeout denotes that the target did not respond in time. + LoadBalancerTargetHealthStatusDetailLayer7Timeout LoadBalancerTargetHealthStatusDetail = "layer7_timeout" + // LoadBalancerTargetHealthStatusDetailUnexpectedHTTPStatus denotes that the target responded with an unexpected HTTP status code. + LoadBalancerTargetHealthStatusDetailUnexpectedHTTPStatus LoadBalancerTargetHealthStatusDetail = "unexpected_http_status" + // LoadBalancerTargetHealthStatusDetailUnexpectedHTTPContent denotes that the target responded with unexpected HTTP content. + LoadBalancerTargetHealthStatusDetailUnexpectedHTTPContent LoadBalancerTargetHealthStatusDetail = "unexpected_http_content" +) + // LoadBalancerTargetHealthStatus describes a target's health for a specific service. type LoadBalancerTargetHealthStatus struct { - ListenPort int - Status LoadBalancerTargetHealthStatusStatus + ListenPort int + Status LoadBalancerTargetHealthStatusStatus + Detail *LoadBalancerTargetHealthStatusDetail + HTTPStatusCode *int } // LoadBalancerProtection represents the protection level of a Load Balancer. diff --git a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/load_balancer.go b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/load_balancer.go index fde918f3..e35af4eb 100644 --- a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/load_balancer.go +++ b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/load_balancer.go @@ -95,8 +95,10 @@ type LoadBalancerTarget struct { } type LoadBalancerTargetHealthStatus struct { - ListenPort int `json:"listen_port"` - Status string `json:"status"` + ListenPort int `json:"listen_port"` + Status string `json:"status"` + Detail *string `json:"detail"` + HTTPStatusCode *int `json:"http_status_code"` } type LoadBalancerTargetServer struct { diff --git a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_schema_converter.go b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_schema_converter.go index aa9ef06f..83c56bcc 100644 --- a/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_schema_converter.go +++ b/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_schema_converter.go @@ -254,6 +254,11 @@ func (c *converterImpl) LoadBalancerTargetHealthStatusFromSchema(source schema.L var hcloudLoadBalancerTargetHealthStatus LoadBalancerTargetHealthStatus hcloudLoadBalancerTargetHealthStatus.ListenPort = source.ListenPort hcloudLoadBalancerTargetHealthStatus.Status = LoadBalancerTargetHealthStatusStatus(source.Status) + if source.Detail != nil { + hcloudLoadBalancerTargetHealthStatusDetail := LoadBalancerTargetHealthStatusDetail(*source.Detail) + hcloudLoadBalancerTargetHealthStatus.Detail = &hcloudLoadBalancerTargetHealthStatusDetail + } + hcloudLoadBalancerTargetHealthStatus.HTTPStatusCode = source.HTTPStatusCode return hcloudLoadBalancerTargetHealthStatus } func (c *converterImpl) LoadBalancerTargetServerFromSchema(source schema.LoadBalancerTargetServer) LoadBalancerTargetServer { @@ -761,6 +766,11 @@ func (c *converterImpl) SchemaFromLoadBalancerTargetHealthStatus(source LoadBala var schemaLoadBalancerTargetHealthStatus schema.LoadBalancerTargetHealthStatus schemaLoadBalancerTargetHealthStatus.ListenPort = source.ListenPort schemaLoadBalancerTargetHealthStatus.Status = string(source.Status) + if source.Detail != nil { + xstring := string(*source.Detail) + schemaLoadBalancerTargetHealthStatus.Detail = &xstring + } + schemaLoadBalancerTargetHealthStatus.HTTPStatusCode = source.HTTPStatusCode return schemaLoadBalancerTargetHealthStatus } func (c *converterImpl) SchemaFromLoadBalancerType(source *LoadBalancerType) schema.LoadBalancerType { diff --git a/vendor/modules.txt b/vendor/modules.txt index 8dec6fea..20c1254c 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -485,7 +485,7 @@ github.com/hashicorp/errwrap # github.com/hashicorp/go-multierror v1.1.1 ## explicit; go 1.13 github.com/hashicorp/go-multierror -# github.com/hetznercloud/hcloud-go/v2 v2.49.0 +# github.com/hetznercloud/hcloud-go/v2 v2.50.0 ## explicit; go 1.25.0 github.com/hetznercloud/hcloud-go/v2/hcloud github.com/hetznercloud/hcloud-go/v2/hcloud/exp/ctxutil