Skip to content

Commit a5b5610

Browse files
authored
🌱 Add linter to show nil panic. (#1960)
* 🌱 Add linter to show nil panic. The code contained an obvious nil panic on err.Error() ```go err = action.Error() if err != nil { err = fmt.Errorf("action %+v failed (wait for rescue enabled): %w", action, err) s.scope.Error(err, "") err := s.scope.SetErrorAndRemediate(ctx, err.Error()) if err != nil { return reconcile.Result{}, err } conditions.MarkFalse(hm, infrav1.ServerProvisionedCondition, "EnablingRescueActionFailed", clusterv1.ConditionSeverityWarning, "%s", err.Error()) return reconcile.Result{}, nil } ``` No linter complained up to now. Govet nilness does detect that now. * Fix lint findings * Fix CI failures * Revert "Fix CI failures" This reverts commit 3028076. * Revert "Fix lint findings" This reverts commit d7cd79b. * Fix rescue action nil panic
1 parent 59d4654 commit a5b5610

2 files changed

Lines changed: 8 additions & 4 deletions

File tree

.golangci.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ linters:
4040
- unused
4141
- whitespace
4242
settings:
43+
govet:
44+
enable:
45+
- nilness
4346
gocritic:
4447
disabled-checks:
4548
- appendAssign

pkg/services/hcloud/server/server.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -449,14 +449,15 @@ func (s *Service) handleBootStateEnablingRescue(ctx context.Context, server *hcl
449449
err = action.Error()
450450
if err != nil {
451451
err = fmt.Errorf("action %+v failed (wait for rescue enabled): %w", action, err)
452+
msg := err.Error()
452453
s.scope.Error(err, "")
453-
err := s.scope.SetErrorAndRemediate(ctx, err.Error())
454-
if err != nil {
455-
return reconcile.Result{}, err
454+
remediateErr := s.scope.SetErrorAndRemediate(ctx, msg)
455+
if remediateErr != nil {
456+
return reconcile.Result{}, remediateErr
456457
}
457458
conditions.MarkFalse(hm, infrav1.ServerProvisionedCondition,
458459
"EnablingRescueActionFailed", clusterv1.ConditionSeverityWarning,
459-
"%s", err.Error())
460+
"%s", msg)
460461
return reconcile.Result{}, nil
461462
}
462463

0 commit comments

Comments
 (0)