diff --git a/.golangci.yaml b/.golangci.yaml index 4489803c07ae4..504a18bc82d85 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -70,7 +70,6 @@ linters: - regexpSimplify - sloppyReassign - tooManyResultsChecker - - typeAssertChain - typeDefFirst - typeSwitchVar - typeUnparen diff --git a/cmd/argocd-dex/commands/argocd_dex.go b/cmd/argocd-dex/commands/argocd_dex.go index bc88923720ae5..9735d997bd93c 100644 --- a/cmd/argocd-dex/commands/argocd_dex.go +++ b/cmd/argocd-dex/commands/argocd_dex.go @@ -221,17 +221,18 @@ func NewGenDexConfigCommand() *cobra.Command { } func iterateStringFields(obj any, callback func(name string, val string) string) { - if mapField, ok := obj.(map[string]any); ok { - for field, val := range mapField { + switch obj := obj.(type) { + case map[string]any: + for field, val := range obj { if strVal, ok := val.(string); ok { - mapField[field] = callback(field, strVal) + obj[field] = callback(field, strVal) } else { iterateStringFields(val, callback) } } - } else if arrayField, ok := obj.([]any); ok { - for i := range arrayField { - iterateStringFields(arrayField[i], callback) + case []any: + for i := range obj { + iterateStringFields(obj[i], callback) } } } diff --git a/server/server.go b/server/server.go index 263c26a800f56..bead294c882e0 100644 --- a/server/server.go +++ b/server/server.go @@ -1662,57 +1662,58 @@ func (bf *bug21955Workaround) ServeHTTP(w http.ResponseWriter, r *http.Request) } func bug21955WorkaroundInterceptor(ctx context.Context, req any, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp any, err error) { - if rq, ok := req.(*repositorypkg.RepoQuery); ok { - repo, err := url.QueryUnescape(rq.Repo) + switch req := req.(type) { + case *repositorypkg.RepoQuery: + repo, err := url.QueryUnescape(req.Repo) if err != nil { return nil, err } - rq.Repo = repo - } else if rk, ok := req.(*repositorypkg.RepoAppsQuery); ok { - repo, err := url.QueryUnescape(rk.Repo) + req.Repo = repo + case *repositorypkg.RepoAppsQuery: + repo, err := url.QueryUnescape(req.Repo) if err != nil { return nil, err } - rk.Repo = repo - } else if rdq, ok := req.(*repositorypkg.RepoAppDetailsQuery); ok { - repo, err := url.QueryUnescape(rdq.Source.RepoURL) + req.Repo = repo + case *repositorypkg.RepoAppDetailsQuery: + repo, err := url.QueryUnescape(req.Source.RepoURL) if err != nil { return nil, err } - rdq.Source.RepoURL = repo - } else if ru, ok := req.(*repositorypkg.RepoUpdateRequest); ok { - repo, err := url.QueryUnescape(ru.Repo.Repo) + req.Source.RepoURL = repo + case *repositorypkg.RepoUpdateRequest: + repo, err := url.QueryUnescape(req.Repo.Repo) if err != nil { return nil, err } - ru.Repo.Repo = repo - } else if rk, ok := req.(*repocredspkg.RepoCredsQuery); ok { - pattern, err := url.QueryUnescape(rk.Url) + req.Repo.Repo = repo + case *repocredspkg.RepoCredsQuery: + pattern, err := url.QueryUnescape(req.Url) if err != nil { return nil, err } - rk.Url = pattern - } else if rk, ok := req.(*repocredspkg.RepoCredsDeleteRequest); ok { - pattern, err := url.QueryUnescape(rk.Url) + req.Url = pattern + case *repocredspkg.RepoCredsDeleteRequest: + pattern, err := url.QueryUnescape(req.Url) if err != nil { return nil, err } - rk.Url = pattern - } else if cq, ok := req.(*clusterpkg.ClusterQuery); ok { - if cq.Id != nil { - val, err := url.QueryUnescape(cq.Id.Value) + req.Url = pattern + case *clusterpkg.ClusterQuery: + if req.Id != nil { + val, err := url.QueryUnescape(req.Id.Value) if err != nil { return nil, err } - cq.Id.Value = val + req.Id.Value = val } - } else if cu, ok := req.(*clusterpkg.ClusterUpdateRequest); ok { - if cu.Id != nil { - val, err := url.QueryUnescape(cu.Id.Value) + case *clusterpkg.ClusterUpdateRequest: + if req.Id != nil { + val, err := url.QueryUnescape(req.Id.Value) if err != nil { return nil, err } - cu.Id.Value = val + req.Id.Value = val } } return handler(ctx, req) diff --git a/util/kustomize/kustomize.go b/util/kustomize/kustomize.go index 564cbed3435a7..cda1b3be23bcf 100644 --- a/util/kustomize/kustomize.go +++ b/util/kustomize/kustomize.go @@ -506,9 +506,10 @@ func getImageParameters(objs []*unstructured.Unstructured) []Image { func getImages(object map[string]any) []Image { var images []Image for k, v := range object { - if array, ok := v.([]any); ok { + switch v := v.(type) { + case []any: if k == "containers" || k == "initContainers" { - for _, obj := range array { + for _, obj := range v { if mapObj, isMapObj := obj.(map[string]any); isMapObj { if image, hasImage := mapObj["image"]; hasImage { images = append(images, fmt.Sprintf("%s", image)) @@ -516,14 +517,14 @@ func getImages(object map[string]any) []Image { } } } else { - for i := range array { - if mapObj, isMapObj := array[i].(map[string]any); isMapObj { + for i := range v { + if mapObj, isMapObj := v[i].(map[string]any); isMapObj { images = append(images, getImages(mapObj)...) } } } - } else if objMap, ok := v.(map[string]any); ok { - images = append(images, getImages(objMap)...) + case map[string]any: + images = append(images, getImages(v)...) } } return images