From d920f443b1f72bc77dec146db239d67379c27112 Mon Sep 17 00:00:00 2001 From: Martin Maly Date: Fri, 4 Feb 2022 18:05:36 -0800 Subject: [PATCH] Fix clone directory rewriting After changes to git cloning we return PackageResources with configs at the "root directory". Therefore we don't need to rewrite config paths anymore. --- porch/engine/pkg/engine/clone.go | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/porch/engine/pkg/engine/clone.go b/porch/engine/pkg/engine/clone.go index 7644fa8da5..8b6cbe2967 100644 --- a/porch/engine/pkg/engine/clone.go +++ b/porch/engine/pkg/engine/clone.go @@ -20,9 +20,8 @@ import ( "fmt" "io/ioutil" "os" - "path" - "strings" + v1 "github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1" api "github.com/GoogleContainerTools/kpt/porch/api/porch/v1alpha1" configapi "github.com/GoogleContainerTools/kpt/porch/controllers/pkg/apis/porch/v1alpha1" "github.com/GoogleContainerTools/kpt/porch/engine/pkg/kpt" @@ -98,19 +97,10 @@ func (m *clonePackageMutation) cloneFromGit(ctx context.Context, gitPackage *api return repository.PackageResources{}, fmt.Errorf("cannot read package resources: %w", err) } - // Rewrite paths - results := map[string]string{} - prefix := gitPackage.Directory + "/" - for k, v := range resources.Spec.Resources { - if !strings.HasPrefix(k, prefix) { - return repository.PackageResources{}, fmt.Errorf("invalid file path within a package: %q", k) - } - results[path.Join(m.name, k[len(prefix):])] = v - } + contents := resources.Spec.Resources // Update Kptfile - kptfilePath := path.Join(m.name, "Kptfile") - kptfile, found := results[kptfilePath] + kptfile, found := contents[v1.KptFileName] if !found { return repository.PackageResources{}, fmt.Errorf("package %s@%s is not valid; missing Kptfile", gitPackage.Directory, gitPackage.Ref) } @@ -120,10 +110,10 @@ func (m *clonePackageMutation) cloneFromGit(ctx context.Context, gitPackage *api return repository.PackageResources{}, err } - results[kptfilePath] = kptfile + contents[v1.KptFileName] = kptfile return repository.PackageResources{ - Contents: results, + Contents: contents, }, nil }