Skip to content

Commit 0e55c84

Browse files
committed
WIP: Fix unit test results
1 parent 1bdb46c commit 0e55c84

1 file changed

Lines changed: 33 additions & 29 deletions

File tree

cloud/linode/loadbalancers.go

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ func (l *loadbalancers) cleanupOldNodeBalancer(ctx context.Context, service *v1.
127127

128128
previousNB, err := l.getNodeBalancerByStatus(ctx, service)
129129
if err != nil {
130-
var targetError *lbNotFoundError
130+
var targetError lbNotFoundError
131131
if errors.As(err, &targetError) {
132132
return nil
133133
} else {
@@ -177,7 +177,7 @@ func (l *loadbalancers) GetLoadBalancer(ctx context.Context, clusterName string,
177177

178178
nb, err := l.getNodeBalancerForService(ctx, service)
179179
if err != nil {
180-
var targetError *lbNotFoundError
180+
var targetError lbNotFoundError
181181
if errors.As(err, &targetError) {
182182
return nil, false, nil
183183
} else {
@@ -252,30 +252,31 @@ func (l *loadbalancers) EnsureLoadBalancer(ctx context.Context, clusterName stri
252252
var nb *linodego.NodeBalancer
253253

254254
nb, err = l.getNodeBalancerForService(ctx, service)
255-
if err == nil {
256-
if err = l.updateNodeBalancer(ctx, clusterName, service, nodes, nb); err != nil {
255+
//nolint: errorlint //conversion to errors.Is() may break chainsaw tests
256+
switch err.(type) {
257+
case lbNotFoundError:
258+
if service.GetAnnotations()[annotations.AnnLinodeNodeBalancerID] != "" {
259+
// a load balancer annotation has been created so a NodeBalancer is coming, error out and retry later
260+
klog.Infof("NodeBalancer created but not available yet, waiting...")
257261
sentry.CaptureError(ctx, err)
258262
return nil, err
259263
}
260-
} else {
261-
var targetError *lbNotFoundError
262-
if errors.As(err, &targetError) {
263-
if service.GetAnnotations()[annotations.AnnLinodeNodeBalancerID] != "" {
264-
// a load balancer annotation has been created so a NodeBalancer is coming, error out and retry later
265-
klog.Infof("NodeBalancer created but not available yet, waiting...")
266-
sentry.CaptureError(ctx, err)
267-
return nil, err
268-
}
269264

270-
if nb, err = l.buildLoadBalancerRequest(ctx, clusterName, service, nodes); err != nil {
271-
sentry.CaptureError(ctx, err)
272-
return nil, err
273-
}
274-
klog.Infof("created new NodeBalancer (%d) for service (%s)", nb.ID, serviceNn)
275-
} else {
265+
if nb, err = l.buildLoadBalancerRequest(ctx, clusterName, service, nodes); err != nil {
266+
sentry.CaptureError(ctx, err)
267+
return nil, err
268+
}
269+
klog.Infof("created new NodeBalancer (%d) for service (%s)", nb.ID, serviceNn)
270+
271+
case nil:
272+
if err = l.updateNodeBalancer(ctx, clusterName, service, nodes, nb); err != nil {
276273
sentry.CaptureError(ctx, err)
277274
return nil, err
278275
}
276+
277+
default:
278+
sentry.CaptureError(ctx, err)
279+
return nil, err
279280
}
280281

281282
klog.Infof("NodeBalancer (%d) has been ensured for service (%s)", nb.ID, serviceNn)
@@ -552,16 +553,19 @@ func (l *loadbalancers) EnsureLoadBalancerDeleted(ctx context.Context, clusterNa
552553
}
553554

554555
nb, err := l.getNodeBalancerForService(ctx, service)
555-
if err != nil {
556-
var targetError *lbNotFoundError
557-
if errors.As(err, &targetError) {
558-
klog.Infof("short-circuiting deletion for NodeBalancer for service (%s) as one does not exist: %s", serviceNn, err)
559-
return nil
560-
} else {
561-
klog.Errorf("failed to get NodeBalancer for service (%s): %s", serviceNn, err)
562-
sentry.CaptureError(ctx, err)
563-
return err
564-
}
556+
//nolint: errorlint //conversion to errors.Is() may break chainsaw tests
557+
switch getErr := err.(type) {
558+
case nil:
559+
break
560+
561+
case lbNotFoundError:
562+
klog.Infof("short-circuiting deletion for NodeBalancer for service (%s) as one does not exist: %s", serviceNn, err)
563+
return nil
564+
565+
default:
566+
klog.Errorf("failed to get NodeBalancer for service (%s): %s", serviceNn, err)
567+
sentry.CaptureError(ctx, getErr)
568+
return err
565569
}
566570

567571
if l.shouldPreserveNodeBalancer(service) {

0 commit comments

Comments
 (0)