From a30279d3c4381f0a421f567ceac9f9e964adbb13 Mon Sep 17 00:00:00 2001 From: Simon Fuhrer Date: Wed, 26 Feb 2025 13:51:01 +0100 Subject: [PATCH] check if resource isRemoteFile --- internal/kustomize/kustomize.go | 22 ++++++++++++---------- internal/kustomize/utils.go | 6 ++++++ 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/internal/kustomize/kustomize.go b/internal/kustomize/kustomize.go index 559be26..2b05038 100644 --- a/internal/kustomize/kustomize.go +++ b/internal/kustomize/kustomize.go @@ -63,18 +63,20 @@ func (k *Kustomize) paths(path string) error { } for _, resource := range kz.Resources { - p := filepath.Join(path, resource) - file, err := os.Stat(p) - if err != nil { - return err - } - if file.IsDir() { - p = convertPath(p) - if err := k.paths(p); err != nil { + if !isRemoteFile(resource) { + p := filepath.Join(path, resource) + file, err := os.Stat(p) + if err != nil { return err } - if err := k.addPath(p); err != nil { - return err + if file.IsDir() { + p = convertPath(p) + if err := k.paths(p); err != nil { + return err + } + if err := k.addPath(p); err != nil { + return err + } } } } diff --git a/internal/kustomize/utils.go b/internal/kustomize/utils.go index 09475ac..8c43bd8 100644 --- a/internal/kustomize/utils.go +++ b/internal/kustomize/utils.go @@ -2,6 +2,7 @@ package kustomize import ( "fmt" + "net/url" "os" "path/filepath" @@ -33,3 +34,8 @@ func kustomizeFile(path string) (types.Kustomization, error) { } return kz, fmt.Errorf("no kustomization file found in %v", path) } + +func isRemoteFile(path string) bool { + u, err := url.Parse(path) + return err == nil && (u.Scheme == "http" || u.Scheme == "https") +}