fix(pkg): errorlint linter

#### Description

errorlint linter in pkg/chart/v2/lint/rules

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
pull/31812/head
Matthieu MOREL 8 months ago
parent 9b22aa4e05
commit 6dafe72286

@ -16,7 +16,10 @@ limitations under the License.
package rules // import "helm.sh/helm/v4/pkg/chart/v2/lint/rules" package rules // import "helm.sh/helm/v4/pkg/chart/v2/lint/rules"
import "testing" import (
"errors"
"testing"
)
func TestValidateNoDeprecations(t *testing.T) { func TestValidateNoDeprecations(t *testing.T) {
deprecated := &k8sYamlStruct{ deprecated := &k8sYamlStruct{
@ -27,7 +30,11 @@ func TestValidateNoDeprecations(t *testing.T) {
if err == nil { if err == nil {
t.Fatal("Expected deprecated extension to be flagged") t.Fatal("Expected deprecated extension to be flagged")
} }
depErr := err.(deprecatedAPIError) depErr := func() deprecatedAPIError {
var target deprecatedAPIError
_ = errors.As(err, &target)
return target
}()
if depErr.Message == "" { if depErr.Message == "" {
t.Fatalf("Expected error message to be non-blank: %v", err) t.Fatalf("Expected error message to be non-blank: %v", err)
} }

@ -17,6 +17,7 @@ limitations under the License.
package rules package rules
import ( import (
"errors"
"fmt" "fmt"
"os" "os"
"path/filepath" "path/filepath"
@ -235,7 +236,11 @@ func TestDeprecatedAPIFails(t *testing.T) {
t.Fatalf("Expected 1 lint error, got %d", l) t.Fatalf("Expected 1 lint error, got %d", l)
} }
err := linter.Messages[0].Err.(deprecatedAPIError) err := func() deprecatedAPIError {
var target deprecatedAPIError
_ = errors.As(linter.Messages[0].Err, &target)
return target
}()
if err.Deprecated != "apps/v1beta1 Deployment" { if err.Deprecated != "apps/v1beta1 Deployment" {
t.Errorf("Surprised to learn that %q is deprecated", err.Deprecated) t.Errorf("Surprised to learn that %q is deprecated", err.Deprecated)
} }

@ -17,6 +17,7 @@ package cmd
import ( import (
"bytes" "bytes"
"errors"
"fmt" "fmt"
"os" "os"
"runtime" "runtime"
@ -144,7 +145,8 @@ func TestLoadCLIPlugins(t *testing.T) {
if runtime.GOOS != "windows" { if runtime.GOOS != "windows" {
if err := pluginCmd.RunE(pluginCmd, tt.args); err != nil { if err := pluginCmd.RunE(pluginCmd, tt.args); err != nil {
if tt.code > 0 { if tt.code > 0 {
cerr, ok := err.(CommandError) var cerr CommandError
ok := errors.As(err, &cerr)
if !ok { if !ok {
t.Errorf("Expected %s to return pluginError: got %v(%T)", tt.use, err, err) t.Errorf("Expected %s to return pluginError: got %v(%T)", tt.use, err, err)
} }
@ -218,7 +220,8 @@ func TestLoadPluginsWithSpace(t *testing.T) {
if runtime.GOOS != "windows" { if runtime.GOOS != "windows" {
if err := pp.RunE(pp, tt.args); err != nil { if err := pp.RunE(pp, tt.args); err != nil {
if tt.code > 0 { if tt.code > 0 {
cerr, ok := err.(CommandError) var cerr CommandError
ok := errors.As(err, &cerr)
if !ok { if !ok {
t.Errorf("Expected %s to return pluginError: got %v(%T)", tt.use, err, err) t.Errorf("Expected %s to return pluginError: got %v(%T)", tt.use, err, err)
} }

@ -261,7 +261,7 @@ func (m *Manager) downloadAll(deps []*chart.Dependency) error {
return err return err
} }
} else { } else {
return fmt.Errorf("unable to retrieve file info for '%s': %v", destPath, err) return fmt.Errorf("unable to retrieve file info for '%s': %w", destPath, err)
} }
// Prepare tmpPath // Prepare tmpPath
@ -281,17 +281,17 @@ func (m *Manager) downloadAll(deps []*chart.Dependency) error {
chartPath := filepath.Join(destPath, dep.Name) chartPath := filepath.Join(destPath, dep.Name)
ch, err := loader.LoadDir(chartPath) ch, err := loader.LoadDir(chartPath)
if err != nil { if err != nil {
return fmt.Errorf("unable to load chart '%s': %v", chartPath, err) return fmt.Errorf("unable to load chart '%s': %w", chartPath, err)
} }
constraint, err := semver.NewConstraint(dep.Version) constraint, err := semver.NewConstraint(dep.Version)
if err != nil { if err != nil {
return fmt.Errorf("dependency %s has an invalid version/constraint format: %s", dep.Name, err) return fmt.Errorf("dependency %s has an invalid version/constraint format: %w", dep.Name, err)
} }
v, err := semver.NewVersion(ch.Metadata.Version) v, err := semver.NewVersion(ch.Metadata.Version)
if err != nil { if err != nil {
return fmt.Errorf("invalid version %s for dependency %s: %s", dep.Version, dep.Name, err) return fmt.Errorf("invalid version %s for dependency %s: %w", dep.Version, dep.Name, err)
} }
if !constraint.Check(v) { if !constraint.Check(v) {

@ -485,7 +485,7 @@ func (s *SQL) Create(key string, rel release.Releaser) error {
transaction, err := s.db.Beginx() transaction, err := s.db.Beginx()
if err != nil { if err != nil {
s.Logger().Debug("failed to start SQL transaction", slog.Any("error", err)) s.Logger().Debug("failed to start SQL transaction", slog.Any("error", err))
return fmt.Errorf("error beginning transaction: %v", err) return fmt.Errorf("error beginning transaction: %w", err)
} }
insertQuery, args, err := s.statementBuilder. insertQuery, args, err := s.statementBuilder.
@ -623,7 +623,7 @@ func (s *SQL) Delete(key string) (release.Releaser, error) {
transaction, err := s.db.Beginx() transaction, err := s.db.Beginx()
if err != nil { if err != nil {
s.Logger().Debug("failed to start SQL transaction", slog.Any("error", err)) s.Logger().Debug("failed to start SQL transaction", slog.Any("error", err))
return nil, fmt.Errorf("error beginning transaction: %v", err) return nil, fmt.Errorf("error beginning transaction: %w", err)
} }
selectQuery, args, err := s.statementBuilder. selectQuery, args, err := s.statementBuilder.

Loading…
Cancel
Save