Skip to content

Commit f1eb9f7

Browse files
xoxyslukasmetzner
andauthored
fix: tcp service created for service with unsupported load balancer protocol (#1129)
Fixes: #1128 --------- Co-authored-by: Lukas Metzner <lukas.metzner@hetzner-cloud.de>
1 parent b726bef commit f1eb9f7

2 files changed

Lines changed: 5 additions & 29 deletions

File tree

internal/hcops/load_balancer.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -933,10 +933,6 @@ func (l *LoadBalancerOps) ReconcileHCLBServices(
933933
err error
934934
)
935935

936-
portNo := int(port.Port)
937-
portExists := hclbListenPorts[portNo]
938-
delete(hclbListenPorts, portNo)
939-
940936
if port.Protocol != "" && port.Protocol != corev1.ProtocolTCP {
941937
warnMsg := fmt.Sprintf(
942938
"configured unsupported Hetzner Cloud load balancer protocol %s for service with name %s",
@@ -950,8 +946,13 @@ func (l *LoadBalancerOps) ReconcileHCLBServices(
950946
warnMsg,
951947
)
952948
klog.Warning(warnMsg)
949+
continue
953950
}
954951

952+
portNo := int(port.Port)
953+
portExists := hclbListenPorts[portNo]
954+
delete(hclbListenPorts, portNo)
955+
955956
b := &hclbServiceOptsBuilder{
956957
Port: port,
957958
Service: svc,

internal/hcops/load_balancer_test.go

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1609,31 +1609,6 @@ func TestLoadBalancerOps_ReconcileHCLBServices(t *testing.T) {
16091609
MaxTargets: 25,
16101610
},
16111611
},
1612-
mock: func(_ *testing.T, tt *LBReconcilementTestCase) {
1613-
opts := hcloud.LoadBalancerAddServiceOpts{
1614-
Protocol: hcloud.LoadBalancerServiceProtocolTCP,
1615-
ListenPort: hcloud.Ptr(80),
1616-
DestinationPort: hcloud.Ptr(8080),
1617-
HealthCheck: &hcloud.LoadBalancerAddServiceOptsHealthCheck{
1618-
Protocol: hcloud.LoadBalancerServiceProtocolTCP,
1619-
Port: hcloud.Ptr(8080),
1620-
},
1621-
}
1622-
action := tt.fx.MockAddService(opts, tt.initialLB, nil)
1623-
tt.fx.ActionClient.On("WaitFor", tt.fx.Ctx, action).Return(nil)
1624-
1625-
opts = hcloud.LoadBalancerAddServiceOpts{
1626-
Protocol: hcloud.LoadBalancerServiceProtocolTCP,
1627-
ListenPort: hcloud.Ptr(443),
1628-
DestinationPort: hcloud.Ptr(8443),
1629-
HealthCheck: &hcloud.LoadBalancerAddServiceOptsHealthCheck{
1630-
Protocol: hcloud.LoadBalancerServiceProtocolTCP,
1631-
Port: hcloud.Ptr(8443),
1632-
},
1633-
}
1634-
action = tt.fx.MockAddService(opts, tt.initialLB, nil)
1635-
tt.fx.ActionClient.On("WaitFor", tt.fx.Ctx, action).Return(nil)
1636-
},
16371612
perform: func(t *testing.T, tt *LBReconcilementTestCase) {
16381613
_, err := tt.fx.LBOps.ReconcileHCLBServices(tt.fx.Ctx, tt.initialLB, tt.service)
16391614
assert.NoError(t, err)

0 commit comments

Comments
 (0)