From c9887e8c15b6760f712ae2bd8ffd5289bf1ab35d Mon Sep 17 00:00:00 2001 From: Jeffrey Regan Date: Thu, 4 Oct 2018 20:24:22 -0700 Subject: [PATCH] WIP residPackage --- pkg/configmapandsecret/configmapfactory.go | 10 ++--- pkg/crds/crds.go | 6 +-- pkg/crds/crds_test.go | 4 +- pkg/{resource => ifc}/generationbehavior.go | 2 +- pkg/ifc/ifc.go | 12 +++++ pkg/internal/loadertest/fakeloader.go | 5 ++- pkg/loader/fileloader.go | 3 +- pkg/loader/githubloader.go | 3 +- pkg/loader/loader.go | 15 +------ pkg/patch/transformer/factory.go | 10 ++--- pkg/patch/transformer/factory_test.go | 5 ++- pkg/patch/transformer/patchjson6902json.go | 6 +-- .../transformer/patchjson6902json_test.go | 3 +- pkg/patch/transformer/patchjson6902yaml.go | 6 +-- .../transformer/patchjson6902yaml_test.go | 3 +- pkg/patch/transformer/util.go | 5 ++- pkg/{resource => resid}/resid.go | 2 +- pkg/{resource => resid}/resid_test.go | 2 +- pkg/resmap/configmap.go | 3 +- pkg/resmap/configmap_test.go | 14 +++--- pkg/resmap/idslice.go | 4 +- pkg/resmap/idslice_test.go | 34 +++++++-------- pkg/resmap/resmap.go | 34 +++++++-------- pkg/resmap/resmap_test.go | 36 +++++++-------- pkg/resmap/secret.go | 3 +- pkg/resmap/secret_test.go | 10 +++-- pkg/resource/resource.go | 20 ++++----- pkg/target/kusttarget.go | 8 ++-- pkg/target/kusttarget_test.go | 19 ++++---- pkg/transformerconfig/transformerconfig.go | 7 +-- .../transformerconfig_test.go | 3 +- pkg/transformers/imagetag_test.go | 9 ++-- pkg/transformers/labelsandannotations_test.go | 41 +++++++++--------- pkg/transformers/namehash_test.go | 22 +++++----- pkg/transformers/namereference.go | 4 +- pkg/transformers/namereference_test.go | 21 ++++----- pkg/transformers/namespace_test.go | 29 +++++++------ pkg/transformers/patch_test.go | 21 ++++----- pkg/transformers/prefixname_test.go | 13 +++--- .../test-fixtures/basic-hg/.hg/dirstate | Bin 88 -> 88 bytes 40 files changed, 242 insertions(+), 215 deletions(-) rename pkg/{resource => ifc}/generationbehavior.go (98%) rename pkg/{resource => resid}/resid.go (99%) rename pkg/{resource => resid}/resid_test.go (99%) diff --git a/pkg/configmapandsecret/configmapfactory.go b/pkg/configmapandsecret/configmapfactory.go index 6746d4171..2db3d78ba 100644 --- a/pkg/configmapandsecret/configmapfactory.go +++ b/pkg/configmapandsecret/configmapfactory.go @@ -27,19 +27,19 @@ import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/validation" "sigs.k8s.io/kustomize/pkg/fs" - "sigs.k8s.io/kustomize/pkg/loader" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/types" ) // ConfigMapFactory makes ConfigMaps. type ConfigMapFactory struct { fSys fs.FileSystem - ldr loader.Loader + ldr ifc.Loader } // NewConfigMapFactory returns a new ConfigMapFactory. func NewConfigMapFactory( - fSys fs.FileSystem, l loader.Loader) *ConfigMapFactory { + fSys fs.FileSystem, l ifc.Loader) *ConfigMapFactory { return &ConfigMapFactory{fSys: fSys, ldr: l} } @@ -103,7 +103,7 @@ func keyValuesFromLiteralSources(sources []string) ([]kvPair, error) { return kvs, nil } -func keyValuesFromFileSources(ldr loader.Loader, sources []string) ([]kvPair, error) { +func keyValuesFromFileSources(ldr ifc.Loader, sources []string) ([]kvPair, error) { var kvs []kvPair for _, s := range sources { k, fPath, err := parseFileSource(s) @@ -119,7 +119,7 @@ func keyValuesFromFileSources(ldr loader.Loader, sources []string) ([]kvPair, er return kvs, nil } -func keyValuesFromEnvFile(l loader.Loader, path string) ([]kvPair, error) { +func keyValuesFromEnvFile(l ifc.Loader, path string) ([]kvPair, error) { if path == "" { return nil, nil } diff --git a/pkg/crds/crds.go b/pkg/crds/crds.go index 33cd94e0a..97bfbb3f6 100644 --- a/pkg/crds/crds.go +++ b/pkg/crds/crds.go @@ -25,12 +25,12 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/kube-openapi/pkg/common" "sigs.k8s.io/kustomize/pkg/gvk" - "sigs.k8s.io/kustomize/pkg/loader" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/transformerconfig" ) // RegisterCRDs parse CRD schemas from paths and update various pathConfigs -func RegisterCRDs(loader loader.Loader, paths []string) (*transformerconfig.TransformerConfig, error) { +func RegisterCRDs(loader ifc.Loader, paths []string) (*transformerconfig.TransformerConfig, error) { pathConfigs := transformerconfig.MakeEmptyTransformerConfig() for _, path := range paths { pathConfig, err := registerCRD(loader, path) @@ -43,7 +43,7 @@ func RegisterCRDs(loader loader.Loader, paths []string) (*transformerconfig.Tran } // register CRD from one path -func registerCRD(loader loader.Loader, path string) (*transformerconfig.TransformerConfig, error) { +func registerCRD(loader ifc.Loader, path string) (*transformerconfig.TransformerConfig, error) { result := transformerconfig.MakeEmptyTransformerConfig() content, err := loader.Load(path) if err != nil { diff --git a/pkg/crds/crds_test.go b/pkg/crds/crds_test.go index c290d8661..224291f25 100644 --- a/pkg/crds/crds_test.go +++ b/pkg/crds/crds_test.go @@ -21,8 +21,8 @@ import ( "testing" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/internal/loadertest" - "sigs.k8s.io/kustomize/pkg/loader" "sigs.k8s.io/kustomize/pkg/transformerconfig" ) @@ -140,7 +140,7 @@ If it is not set we generate a secret dynamically", ` ) -func makeLoader(t *testing.T) loader.Loader { +func makeLoader(t *testing.T) ifc.Loader { ldr := loadertest.NewFakeLoader("/testpath") err := ldr.AddFile("/testpath/crd.json", []byte(crdContent)) if err != nil { diff --git a/pkg/resource/generationbehavior.go b/pkg/ifc/generationbehavior.go similarity index 98% rename from pkg/resource/generationbehavior.go rename to pkg/ifc/generationbehavior.go index 943537a51..e798ca33e 100644 --- a/pkg/resource/generationbehavior.go +++ b/pkg/ifc/generationbehavior.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package resource +package ifc // GenerationBehavior specifies generation behavior of configmaps, secrets and maybe other resources. type GenerationBehavior int diff --git a/pkg/ifc/ifc.go b/pkg/ifc/ifc.go index 9ce2b317c..c71debf59 100644 --- a/pkg/ifc/ifc.go +++ b/pkg/ifc/ifc.go @@ -31,3 +31,15 @@ type Validator interface { MakeLabelValidator() func(map[string]string) error ValidateNamespace(string) []string } + +// Loader interface exposes methods to read bytes. +type Loader interface { + // Root returns the root location for this Loader. + Root() string + // New returns Loader located at newRoot. + New(newRoot string) (Loader, error) + // Load returns the bytes read from the location or an error. + Load(location string) ([]byte, error) + // Cleanup cleans the loader + Cleanup() error +} diff --git a/pkg/internal/loadertest/fakeloader.go b/pkg/internal/loadertest/fakeloader.go index 0cc4b2688..66f2b5add 100644 --- a/pkg/internal/loadertest/fakeloader.go +++ b/pkg/internal/loadertest/fakeloader.go @@ -19,13 +19,14 @@ package loadertest import ( "sigs.k8s.io/kustomize/pkg/fs" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/loader" ) // FakeLoader encapsulates the delegate Loader and the fake file system. type FakeLoader struct { fs fs.FileSystem - delegate loader.Loader + delegate ifc.Loader } // NewFakeLoader returns a Loader that delegates calls, and encapsulates @@ -55,7 +56,7 @@ func (f FakeLoader) Root() string { } // New creates a new loader from a new root. -func (f FakeLoader) New(newRoot string) (loader.Loader, error) { +func (f FakeLoader) New(newRoot string) (ifc.Loader, error) { l, err := f.delegate.New(newRoot) if err != nil { return nil, err diff --git a/pkg/loader/fileloader.go b/pkg/loader/fileloader.go index bd30ba56e..7a816348c 100644 --- a/pkg/loader/fileloader.go +++ b/pkg/loader/fileloader.go @@ -22,6 +22,7 @@ import ( "path/filepath" "sigs.k8s.io/kustomize/pkg/fs" + "sigs.k8s.io/kustomize/pkg/ifc" ) const currentDir = "." @@ -52,7 +53,7 @@ func (l *fileLoader) Root() string { // slash or not. // Example: "/home/seans/project" or "/home/seans/project/" // NOT "/home/seans/project/file.yaml". -func (l *fileLoader) New(newRoot string) (Loader, error) { +func (l *fileLoader) New(newRoot string) (ifc.Loader, error) { return NewLoader(newRoot, l.root, l.fSys) } diff --git a/pkg/loader/githubloader.go b/pkg/loader/githubloader.go index 02dcdbe73..a062f34ba 100644 --- a/pkg/loader/githubloader.go +++ b/pkg/loader/githubloader.go @@ -20,6 +20,7 @@ import ( "io/ioutil" "os" "path/filepath" + "sigs.k8s.io/kustomize/pkg/ifc" "strings" "github.com/hashicorp/go-getter" @@ -43,7 +44,7 @@ func (l *githubLoader) Root() string { } // New delegates to fileLoader.New -func (l *githubLoader) New(newRoot string) (Loader, error) { +func (l *githubLoader) New(newRoot string) (ifc.Loader, error) { return l.loader.New(newRoot) } diff --git a/pkg/loader/loader.go b/pkg/loader/loader.go index b3e70ef18..8545374bb 100644 --- a/pkg/loader/loader.go +++ b/pkg/loader/loader.go @@ -20,25 +20,14 @@ package loader import ( "fmt" "path/filepath" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/fs" ) -// Loader interface exposes methods to read bytes. -type Loader interface { - // Root returns the root location for this Loader. - Root() string - // New returns Loader located at newRoot. - New(newRoot string) (Loader, error) - // Load returns the bytes read from the location or an error. - Load(location string) ([]byte, error) - // Cleanup cleans the loader - Cleanup() error -} - // NewLoader returns a Loader given a target // The target can be a local disk directory or a github Url -func NewLoader(target, r string, fSys fs.FileSystem) (Loader, error) { +func NewLoader(target, r string, fSys fs.FileSystem) (ifc.Loader, error) { if !isValidLoaderPath(target, r) { return nil, fmt.Errorf("Not valid path: root='%s', loc='%s'\n", r, target) } diff --git a/pkg/patch/transformer/factory.go b/pkg/patch/transformer/factory.go index f6afbb9be..6f85e9744 100644 --- a/pkg/patch/transformer/factory.go +++ b/pkg/patch/transformer/factory.go @@ -18,23 +18,23 @@ package transformer import ( "fmt" + "sigs.k8s.io/kustomize/pkg/ifc" + "sigs.k8s.io/kustomize/pkg/resid" "github.com/evanphx/json-patch" "github.com/krishicks/yaml-patch" "sigs.k8s.io/kustomize/pkg/gvk" - "sigs.k8s.io/kustomize/pkg/loader" "sigs.k8s.io/kustomize/pkg/patch" - "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformers" ) // PatchJson6902Factory makes Json6902 transformers type PatchJson6902Factory struct { - loader loader.Loader + loader ifc.Loader } // NewPatchJson6902Factory returns a new PatchJson6902Factory. -func NewPatchJson6902Factory(l loader.Loader) PatchJson6902Factory { +func NewPatchJson6902Factory(l ifc.Loader) PatchJson6902Factory { return PatchJson6902Factory{loader: l} } @@ -61,7 +61,7 @@ func (f PatchJson6902Factory) makeOnePatchJson6902Transformer(p patch.Json6902) return nil, fmt.Errorf("must specify the path for a json patch file") } - targetId := resource.NewResIdWithPrefixNamespace( + targetId := resid.NewResIdWithPrefixNamespace( gvk.Gvk{ Group: p.Target.Group, Version: p.Target.Version, diff --git a/pkg/patch/transformer/factory_test.go b/pkg/patch/transformer/factory_test.go index 9e9836d6c..8fd7eb0ed 100644 --- a/pkg/patch/transformer/factory_test.go +++ b/pkg/patch/transformer/factory_test.go @@ -25,6 +25,7 @@ import ( "sigs.k8s.io/kustomize/pkg/gvk" "sigs.k8s.io/kustomize/pkg/internal/loadertest" "sigs.k8s.io/kustomize/pkg/patch" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) @@ -179,7 +180,7 @@ func TestNewPatchJson6902FactoryMulti(t *testing.T) { t.Fatal("the returned transformer should not be nil") } - id := resource.NewResId(gvk.FromKind("foo"), "some-name") + id := resid.NewResId(gvk.FromKind("foo"), "some-name") base := resmap.ResMap{ id: resource.NewResourceFromMap( map[string]interface{}{ @@ -293,7 +294,7 @@ func TestNewPatchJson6902FactoryMultiConflict(t *testing.T) { t.Fatal("the returned transformer should not be nil") } - id := resource.NewResId(gvk.FromKind("foo"), "some-name") + id := resid.NewResId(gvk.FromKind("foo"), "some-name") base := resmap.ResMap{ id: resource.NewResourceFromMap( map[string]interface{}{ diff --git a/pkg/patch/transformer/patchjson6902json.go b/pkg/patch/transformer/patchjson6902json.go index 4f4f633c1..11bfa2280 100644 --- a/pkg/patch/transformer/patchjson6902json.go +++ b/pkg/patch/transformer/patchjson6902json.go @@ -18,21 +18,21 @@ package transformer import ( "github.com/evanphx/json-patch" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" - "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformers" ) // patchJson6902JSONTransformer applies patches. type patchJson6902JSONTransformer struct { - target resource.ResId + target resid.ResId patch jsonpatch.Patch } var _ transformers.Transformer = &patchJson6902JSONTransformer{} // newPatchJson6902JSONTransformer constructs a PatchJson6902 transformer. -func newPatchJson6902JSONTransformer(t resource.ResId, p jsonpatch.Patch) (transformers.Transformer, error) { +func newPatchJson6902JSONTransformer(t resid.ResId, p jsonpatch.Patch) (transformers.Transformer, error) { if len(p) == 0 { return transformers.NewNoOpTransformer(), nil } diff --git a/pkg/patch/transformer/patchjson6902json_test.go b/pkg/patch/transformer/patchjson6902json_test.go index 4731eec6e..180cc77ae 100644 --- a/pkg/patch/transformer/patchjson6902json_test.go +++ b/pkg/patch/transformer/patchjson6902json_test.go @@ -21,12 +21,13 @@ import ( "testing" "github.com/evanphx/json-patch" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) func TestJsonPatchJSONTransformer_Transform(t *testing.T) { - id := resource.NewResId(deploy, "deploy1") + id := resid.NewResId(deploy, "deploy1") base := resmap.ResMap{ id: resource.NewResourceFromMap( map[string]interface{}{ diff --git a/pkg/patch/transformer/patchjson6902yaml.go b/pkg/patch/transformer/patchjson6902yaml.go index fee314d2f..cafdf25d7 100644 --- a/pkg/patch/transformer/patchjson6902yaml.go +++ b/pkg/patch/transformer/patchjson6902yaml.go @@ -19,21 +19,21 @@ package transformer import ( "github.com/ghodss/yaml" "github.com/krishicks/yaml-patch" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" - "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformers" ) // patchJson6902YAMLTransformer applies patches. type patchJson6902YAMLTransformer struct { - target resource.ResId + target resid.ResId patch yamlpatch.Patch } var _ transformers.Transformer = &patchJson6902YAMLTransformer{} // newPatchJson6902YAMLTransformer constructs a PatchJson6902 transformer. -func newPatchJson6902YAMLTransformer(t resource.ResId, p yamlpatch.Patch) (transformers.Transformer, error) { +func newPatchJson6902YAMLTransformer(t resid.ResId, p yamlpatch.Patch) (transformers.Transformer, error) { if len(p) == 0 { return transformers.NewNoOpTransformer(), nil } diff --git a/pkg/patch/transformer/patchjson6902yaml_test.go b/pkg/patch/transformer/patchjson6902yaml_test.go index 846e2947a..414a1f457 100644 --- a/pkg/patch/transformer/patchjson6902yaml_test.go +++ b/pkg/patch/transformer/patchjson6902yaml_test.go @@ -22,6 +22,7 @@ import ( "github.com/krishicks/yaml-patch" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) @@ -29,7 +30,7 @@ import ( var deploy = gvk.Gvk{Group: "apps", Version: "v1", Kind: "Deployment"} func TestJsonPatchYAMLTransformer_Transform(t *testing.T) { - id := resource.NewResId(deploy, "deploy1") + id := resid.NewResId(deploy, "deploy1") base := resmap.ResMap{ id: resource.NewResourceFromMap( map[string]interface{}{ diff --git a/pkg/patch/transformer/util.go b/pkg/patch/transformer/util.go index 0e4d9e55a..aaed1e1cc 100644 --- a/pkg/patch/transformer/util.go +++ b/pkg/patch/transformer/util.go @@ -19,14 +19,15 @@ package transformer import ( "fmt" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) -func findTargetObj(m resmap.ResMap, targetId resource.ResId) (*resource.Resource, error) { +func findTargetObj(m resmap.ResMap, targetId resid.ResId) (*resource.Resource, error) { matchedIds := m.FindByGVKN(targetId) if targetId.Namespace() != "" { - var ids []resource.ResId + var ids []resid.ResId for _, id := range matchedIds { if id.Namespace() == targetId.Namespace() { ids = append(ids, id) diff --git a/pkg/resource/resid.go b/pkg/resid/resid.go similarity index 99% rename from pkg/resource/resid.go rename to pkg/resid/resid.go index 954914fb9..57c401153 100644 --- a/pkg/resource/resid.go +++ b/pkg/resid/resid.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package resource +package resid import ( "strings" diff --git a/pkg/resource/resid_test.go b/pkg/resid/resid_test.go similarity index 99% rename from pkg/resource/resid_test.go rename to pkg/resid/resid_test.go index 221499a59..70151bf2e 100644 --- a/pkg/resource/resid_test.go +++ b/pkg/resid/resid_test.go @@ -1,4 +1,4 @@ -package resource +package resid import ( "testing" diff --git a/pkg/resmap/configmap.go b/pkg/resmap/configmap.go index 0b2991f1a..8c0efba13 100644 --- a/pkg/resmap/configmap.go +++ b/pkg/resmap/configmap.go @@ -18,6 +18,7 @@ package resmap import ( "sigs.k8s.io/kustomize/pkg/configmapandsecret" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/types" ) @@ -37,7 +38,7 @@ func NewResMapFromConfigMapArgs( return nil, err } res, err := resource.NewResourceWithBehavior( - cm, resource.NewGenerationBehavior(cmArgs.Behavior)) + cm, ifc.NewGenerationBehavior(cmArgs.Behavior)) if err != nil { return nil, err } diff --git a/pkg/resmap/configmap_test.go b/pkg/resmap/configmap_test.go index 888da07b9..07914ea5b 100644 --- a/pkg/resmap/configmap_test.go +++ b/pkg/resmap/configmap_test.go @@ -23,7 +23,9 @@ import ( "sigs.k8s.io/kustomize/pkg/configmapandsecret" "sigs.k8s.io/kustomize/pkg/fs" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/internal/loadertest" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/types" ) @@ -55,7 +57,7 @@ func TestNewFromConfigMaps(t *testing.T) { filepath: "/home/seans/project/app.env", content: "DB_USERNAME=admin\nDB_PASSWORD=somepw", expected: ResMap{ - resource.NewResId(cmap, "envConfigMap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "envConfigMap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -66,7 +68,7 @@ func TestNewFromConfigMaps(t *testing.T) { "DB_USERNAME": "admin", "DB_PASSWORD": "somepw", }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), }, }, { @@ -81,7 +83,7 @@ func TestNewFromConfigMaps(t *testing.T) { filepath: "/home/seans/project/app-init.ini", content: "FOO=bar\nBAR=baz\n", expected: ResMap{ - resource.NewResId(cmap, "fileConfigMap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "fileConfigMap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -93,7 +95,7 @@ func TestNewFromConfigMaps(t *testing.T) { BAR=baz `, }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), }, }, { @@ -107,7 +109,7 @@ BAR=baz }, }, expected: ResMap{ - resource.NewResId(cmap, "literalConfigMap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "literalConfigMap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -120,7 +122,7 @@ BAR=baz "c": "Good Morning", "d": "false", }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), }, }, // TODO: add testcase for data coming from multiple sources like diff --git a/pkg/resmap/idslice.go b/pkg/resmap/idslice.go index daa973c9b..cdf759203 100644 --- a/pkg/resmap/idslice.go +++ b/pkg/resmap/idslice.go @@ -19,11 +19,11 @@ package resmap import ( "sort" - "sigs.k8s.io/kustomize/pkg/resource" + "sigs.k8s.io/kustomize/pkg/resid" ) // IdSlice implements the sort interface. -type IdSlice []resource.ResId +type IdSlice []resid.ResId var _ sort.Interface = IdSlice{} diff --git a/pkg/resmap/idslice_test.go b/pkg/resmap/idslice_test.go index 20d8503ba..884f32b92 100644 --- a/pkg/resmap/idslice_test.go +++ b/pkg/resmap/idslice_test.go @@ -21,29 +21,29 @@ import ( "sort" "testing" - "sigs.k8s.io/kustomize/pkg/resource" + "sigs.k8s.io/kustomize/pkg/resid" ) func TestLess(t *testing.T) { ids := IdSlice{ - resource.NewResIdKindOnly("ConfigMap", "cm"), - resource.NewResIdKindOnly("Pod", "pod"), - resource.NewResIdKindOnly("Namespace", "ns1"), - resource.NewResIdKindOnly("Namespace", "ns2"), - resource.NewResIdKindOnly("Role", "ro"), - resource.NewResIdKindOnly("RoleBinding", "rb"), - resource.NewResIdKindOnly("CustomResourceDefinition", "crd"), - resource.NewResIdKindOnly("ServiceAccount", "sa"), + resid.NewResIdKindOnly("ConfigMap", "cm"), + resid.NewResIdKindOnly("Pod", "pod"), + resid.NewResIdKindOnly("Namespace", "ns1"), + resid.NewResIdKindOnly("Namespace", "ns2"), + resid.NewResIdKindOnly("Role", "ro"), + resid.NewResIdKindOnly("RoleBinding", "rb"), + resid.NewResIdKindOnly("CustomResourceDefinition", "crd"), + resid.NewResIdKindOnly("ServiceAccount", "sa"), } expected := IdSlice{ - resource.NewResIdKindOnly("Namespace", "ns1"), - resource.NewResIdKindOnly("Namespace", "ns2"), - resource.NewResIdKindOnly("CustomResourceDefinition", "crd"), - resource.NewResIdKindOnly("ServiceAccount", "sa"), - resource.NewResIdKindOnly("Role", "ro"), - resource.NewResIdKindOnly("RoleBinding", "rb"), - resource.NewResIdKindOnly("ConfigMap", "cm"), - resource.NewResIdKindOnly("Pod", "pod"), + resid.NewResIdKindOnly("Namespace", "ns1"), + resid.NewResIdKindOnly("Namespace", "ns2"), + resid.NewResIdKindOnly("CustomResourceDefinition", "crd"), + resid.NewResIdKindOnly("ServiceAccount", "sa"), + resid.NewResIdKindOnly("Role", "ro"), + resid.NewResIdKindOnly("RoleBinding", "rb"), + resid.NewResIdKindOnly("ConfigMap", "cm"), + resid.NewResIdKindOnly("Pod", "pod"), } sort.Sort(ids) if !reflect.DeepEqual(ids, expected) { diff --git a/pkg/resmap/resmap.go b/pkg/resmap/resmap.go index 39a79f6d8..02b7979ce 100644 --- a/pkg/resmap/resmap.go +++ b/pkg/resmap/resmap.go @@ -21,7 +21,6 @@ import ( "bytes" "fmt" "reflect" - "sigs.k8s.io/kustomize/pkg/ifc" "sort" "github.com/ghodss/yaml" @@ -29,17 +28,18 @@ import ( "github.com/pkg/errors" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" internal "sigs.k8s.io/kustomize/pkg/internal/error" - "sigs.k8s.io/kustomize/pkg/loader" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resource" ) // ResMap is a map from ResId to Resource. -type ResMap map[resource.ResId]*resource.Resource +type ResMap map[resid.ResId]*resource.Resource // FindByGVKN find the matched ResIds by Group/Version/Kind and Name -func (m ResMap) FindByGVKN(inputId resource.ResId) []resource.ResId { - var result []resource.ResId +func (m ResMap) FindByGVKN(inputId resid.ResId) []resid.ResId { + var result []resid.ResId for id := range m { if id.GvknEquals(inputId) { result = append(result, id) @@ -49,7 +49,7 @@ func (m ResMap) FindByGVKN(inputId resource.ResId) []resource.ResId { } // DemandOneMatchForId find the matched resource by Group/Version/Kind and Name -func (m ResMap) DemandOneMatchForId(inputId resource.ResId) (*resource.Resource, bool) { +func (m ResMap) DemandOneMatchForId(inputId resid.ResId) (*resource.Resource, bool) { result := m.FindByGVKN(inputId) if len(result) == 1 { return m[result[0]], true @@ -59,7 +59,7 @@ func (m ResMap) DemandOneMatchForId(inputId resource.ResId) (*resource.Resource, // EncodeAsYaml encodes a ResMap to YAML; encoded objects separated by `---`. func (m ResMap) EncodeAsYaml() ([]byte, error) { - var ids []resource.ResId + var ids []resid.ResId for id := range m { ids = append(ids, id) } @@ -93,8 +93,8 @@ func (m ResMap) EncodeAsYaml() ([]byte, error) { // ErrorIfNotEqual returns error if maps are not equal. func (m ResMap) ErrorIfNotEqual(m2 ResMap) error { if len(m) != len(m2) { - var keySet1 []resource.ResId - var keySet2 []resource.ResId + var keySet1 []resid.ResId + var keySet2 []resid.ResId for id := range m { keySet1 = append(keySet1, id) } @@ -128,7 +128,7 @@ func (m ResMap) DeepCopy() ResMap { func (m ResMap) insert(newName string, obj *unstructured.Unstructured) error { oldName := obj.GetName() gvKind := gvk.FromSchemaGvk(obj.GroupVersionKind()) - id := resource.NewResId(gvKind, oldName) + id := resid.NewResId(gvKind, oldName) if _, found := m[id]; found { return fmt.Errorf( @@ -141,7 +141,7 @@ func (m ResMap) insert(newName string, obj *unstructured.Unstructured) error { // FilterBy returns a ResMap containing ResIds with the same namespace and nameprefix // with the inputId -func (m ResMap) FilterBy(inputId resource.ResId) ResMap { +func (m ResMap) FilterBy(inputId resid.ResId) ResMap { result := ResMap{} for id, res := range m { if id.Namespace() == inputId.Namespace() && id.HasSameLeftmostPrefix(inputId) { @@ -153,7 +153,7 @@ func (m ResMap) FilterBy(inputId resource.ResId) ResMap { // NewResMapFromFiles returns a ResMap given a resource path slice. func NewResMapFromFiles( - loader loader.Loader, paths []string, + loader ifc.Loader, paths []string, d ifc.Decoder) (ResMap, error) { var result []ResMap for _, path := range paths { @@ -242,23 +242,23 @@ func MergeWithOverride(maps ...ResMap) (ResMap, error) { if len(matchedId) == 1 { id = matchedId[0] switch r.Behavior() { - case resource.BehaviorReplace: + case ifc.BehaviorReplace: glog.V(4).Infof("Replace %v with %v", result[id].Object, r.Object) r.Replace(result[id]) result[id] = r - result[id].SetBehavior(resource.BehaviorCreate) - case resource.BehaviorMerge: + result[id].SetBehavior(ifc.BehaviorCreate) + case ifc.BehaviorMerge: glog.V(4).Infof("Merging %v with %v", result[id].Object, r.Object) r.Merge(result[id]) result[id] = r glog.V(4).Infof("Merged object is %v", result[id].Object) - result[id].SetBehavior(resource.BehaviorCreate) + result[id].SetBehavior(ifc.BehaviorCreate) default: return nil, fmt.Errorf("id %#v exists; must merge or replace", id) } } else if len(matchedId) == 0 { switch r.Behavior() { - case resource.BehaviorMerge, resource.BehaviorReplace: + case ifc.BehaviorMerge, ifc.BehaviorReplace: return nil, fmt.Errorf("id %#v does not exist; cannot merge or replace", id) default: result[id] = r diff --git a/pkg/resmap/resmap_test.go b/pkg/resmap/resmap_test.go index d5994b82f..c0b1acebd 100644 --- a/pkg/resmap/resmap_test.go +++ b/pkg/resmap/resmap_test.go @@ -19,11 +19,13 @@ package resmap import ( "fmt" "reflect" - "sigs.k8s.io/kustomize/internal/k8sdeps" "testing" + "sigs.k8s.io/kustomize/internal/k8sdeps" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/internal/loadertest" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resource" ) @@ -42,7 +44,7 @@ metadata: name: cm2 `) input := ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -50,7 +52,7 @@ metadata: "name": "cm1", }, }), - resource.NewResId(cmap, "cm2"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -89,7 +91,7 @@ metadata: if ferr := l.AddFile("/home/seans/project/deployment.yaml", []byte(resourceStr)); ferr != nil { t.Fatalf("Error adding fake file: %v\n", ferr) } - expected := ResMap{resource.NewResId(deploy, "dply1"): resource.NewResourceFromMap( + expected := ResMap{resid.NewResId(deploy, "dply1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -97,7 +99,7 @@ metadata: "name": "dply1", }, }), - resource.NewResId(deploy, "dply2"): resource.NewResourceFromMap( + resid.NewResId(deploy, "dply2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -131,7 +133,7 @@ metadata: name: cm2 `) expected := ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -139,7 +141,7 @@ metadata: "name": "cm1", }, }), - resource.NewResId(cmap, "cm2"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -160,7 +162,7 @@ metadata: func TestMergeWithoutOverride(t *testing.T) { input1 := ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -170,7 +172,7 @@ func TestMergeWithoutOverride(t *testing.T) { }), } input2 := ResMap{ - resource.NewResId(statefulset, "stateful1"): resource.NewResourceFromMap( + resid.NewResId(statefulset, "stateful1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "StatefulSet", @@ -181,7 +183,7 @@ func TestMergeWithoutOverride(t *testing.T) { } input := []ResMap{input1, input2} expected := ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -189,7 +191,7 @@ func TestMergeWithoutOverride(t *testing.T) { "name": "foo-deploy1", }, }), - resource.NewResId(statefulset, "stateful1"): resource.NewResourceFromMap( + resid.NewResId(statefulset, "stateful1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "StatefulSet", @@ -225,7 +227,7 @@ func TestMergeWithoutOverride(t *testing.T) { func TestMergeWithOverride(t *testing.T) { input1 := ResMap{ - resource.NewResId(cmap, "cmap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cmap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "ConfigMap", @@ -239,7 +241,7 @@ func TestMergeWithOverride(t *testing.T) { }), } input2 := ResMap{ - resource.NewResId(cmap, "cmap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cmap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "ConfigMap", @@ -253,11 +255,11 @@ func TestMergeWithOverride(t *testing.T) { }, }), } - input1[resource.NewResId(cmap, "cmap")].SetBehavior(resource.BehaviorCreate) - input2[resource.NewResId(cmap, "cmap")].SetBehavior(resource.BehaviorMerge) + input1[resid.NewResId(cmap, "cmap")].SetBehavior(ifc.BehaviorCreate) + input2[resid.NewResId(cmap, "cmap")].SetBehavior(ifc.BehaviorMerge) input := []ResMap{input1, input2} expected := ResMap{ - resource.NewResId(cmap, "cmap"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cmap"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "ConfigMap", @@ -273,7 +275,7 @@ func TestMergeWithOverride(t *testing.T) { }, }), } - expected[resource.NewResId(cmap, "cmap")].SetBehavior(resource.BehaviorCreate) + expected[resid.NewResId(cmap, "cmap")].SetBehavior(ifc.BehaviorCreate) merged, err := MergeWithOverride(input...) if err != nil { t.Fatalf("unexpected error: %v", err) diff --git a/pkg/resmap/secret.go b/pkg/resmap/secret.go index c6388ae39..cdfa97d87 100644 --- a/pkg/resmap/secret.go +++ b/pkg/resmap/secret.go @@ -19,6 +19,7 @@ package resmap import ( "github.com/pkg/errors" "sigs.k8s.io/kustomize/pkg/configmapandsecret" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/types" ) @@ -38,7 +39,7 @@ func NewResMapFromSecretArgs( args.Behavior = "create" } res, err := resource.NewResourceWithBehavior( - s, resource.NewGenerationBehavior(args.Behavior)) + s, ifc.NewGenerationBehavior(args.Behavior)) if err != nil { return nil, errors.Wrap(err, "NewResourceWithBehavior") } diff --git a/pkg/resmap/secret_test.go b/pkg/resmap/secret_test.go index 9272a55fd..ef4825a44 100644 --- a/pkg/resmap/secret_test.go +++ b/pkg/resmap/secret_test.go @@ -25,6 +25,8 @@ import ( "sigs.k8s.io/kustomize/pkg/configmapandsecret" "sigs.k8s.io/kustomize/pkg/fs" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/types" ) @@ -61,7 +63,7 @@ func TestNewResMapFromSecretArgs(t *testing.T) { } expected := ResMap{ - resource.NewResId(secret, "apple"): resource.NewResourceFromMap( + resid.NewResId(secret, "apple"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", @@ -73,8 +75,8 @@ func TestNewResMapFromSecretArgs(t *testing.T) { "DB_USERNAME": base64.StdEncoding.EncodeToString([]byte("admin")), "DB_PASSWORD": base64.StdEncoding.EncodeToString([]byte("somepw")), }, - }).SetBehavior(resource.BehaviorCreate), - resource.NewResId(secret, "peanuts"): resource.NewResourceFromMap( + }).SetBehavior(ifc.BehaviorCreate), + resid.NewResId(secret, "peanuts"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", @@ -86,7 +88,7 @@ func TestNewResMapFromSecretArgs(t *testing.T) { "DB_USERNAME": base64.StdEncoding.EncodeToString([]byte("admin")), "DB_PASSWORD": base64.StdEncoding.EncodeToString([]byte("somepw")), }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), } if !reflect.DeepEqual(actual, expected) { t.Fatalf("%#v\ndoesn't match expected:\n%#v", actual, expected) diff --git a/pkg/resource/resource.go b/pkg/resource/resource.go index 51c39daa9..0229999d1 100644 --- a/pkg/resource/resource.go +++ b/pkg/resource/resource.go @@ -29,19 +29,19 @@ import ( "sigs.k8s.io/kustomize/pkg/gvk" "sigs.k8s.io/kustomize/pkg/ifc" internal "sigs.k8s.io/kustomize/pkg/internal/error" - "sigs.k8s.io/kustomize/pkg/loader" "sigs.k8s.io/kustomize/pkg/patch" + "sigs.k8s.io/kustomize/pkg/resid" ) // Resource is an "Unstructured" (json/map form) Kubernetes API resource object // paired with a GenerationBehavior. type Resource struct { unstructured.Unstructured - b GenerationBehavior + b ifc.GenerationBehavior } // NewResourceWithBehavior returns a new instance of Resource. -func NewResourceWithBehavior(obj runtime.Object, b GenerationBehavior) (*Resource, error) { +func NewResourceWithBehavior(obj runtime.Object, b ifc.GenerationBehavior) (*Resource, error) { // Convert obj to a byte stream, then convert that to JSON (Unstructured). marshaled, err := json.Marshal(obj) if err != nil { @@ -61,13 +61,13 @@ func NewResourceFromMap(m map[string]interface{}) *Resource { // NewResourceFromUnstruct returns a new instance of Resource. func NewResourceFromUnstruct(u unstructured.Unstructured) *Resource { - return &Resource{Unstructured: u, b: BehaviorUnspecified} + return &Resource{Unstructured: u, b: ifc.BehaviorUnspecified} } // NewResourceSliceFromPatches returns a slice of resources given a patch path // slice from a kustomization file. func NewResourceSliceFromPatches( - ldr loader.Loader, paths []patch.StrategicMerge, + ldr ifc.Loader, paths []patch.StrategicMerge, decoder ifc.Decoder) ([]*Resource, error) { var result []*Resource for _, path := range paths { @@ -117,24 +117,24 @@ func (r *Resource) String() string { } // Behavior returns the behavior for the resource. -func (r *Resource) Behavior() GenerationBehavior { +func (r *Resource) Behavior() ifc.GenerationBehavior { return r.b } // SetBehavior changes the resource to the new behavior -func (r *Resource) SetBehavior(b GenerationBehavior) *Resource { +func (r *Resource) SetBehavior(b ifc.GenerationBehavior) *Resource { r.b = b return r } // IsGenerated checks if the resource is generated from a generator func (r *Resource) IsGenerated() bool { - return r.b != BehaviorUnspecified + return r.b != ifc.BehaviorUnspecified } // Id returns the ResId for the resource. -func (r *Resource) Id() ResId { - return NewResId(gvk.FromSchemaGvk(r.GroupVersionKind()), r.GetName()) +func (r *Resource) Id() resid.ResId { + return resid.NewResId(gvk.FromSchemaGvk(r.GroupVersionKind()), r.GetName()) } // Merge performs merge with other resource. diff --git a/pkg/target/kusttarget.go b/pkg/target/kusttarget.go index 4bd36b399..385237f80 100644 --- a/pkg/target/kusttarget.go +++ b/pkg/target/kusttarget.go @@ -22,6 +22,7 @@ import ( "encoding/json" "fmt" "sigs.k8s.io/kustomize/pkg/ifc" + "sigs.k8s.io/kustomize/pkg/resid" "github.com/ghodss/yaml" "github.com/golang/glog" @@ -31,7 +32,6 @@ import ( "sigs.k8s.io/kustomize/pkg/crds" "sigs.k8s.io/kustomize/pkg/fs" interror "sigs.k8s.io/kustomize/pkg/internal/error" - "sigs.k8s.io/kustomize/pkg/loader" patchtransformer "sigs.k8s.io/kustomize/pkg/patch/transformer" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" @@ -44,14 +44,14 @@ import ( type KustTarget struct { kustomization *types.Kustomization decoder ifc.Decoder - ldr loader.Loader + ldr ifc.Loader fSys fs.FileSystem tcfg *transformerconfig.TransformerConfig } // NewKustTarget returns a new instance of KustTarget primed with a Loader. func NewKustTarget( - ldr loader.Loader, fSys fs.FileSystem, + ldr ifc.Loader, fSys fs.FileSystem, tcfg *transformerconfig.TransformerConfig, d ifc.Decoder) (*KustTarget, error) { content, err := ldr.Load(constants.KustomizationFileName) @@ -301,7 +301,7 @@ func (kt *KustTarget) resolveRefVars(m resmap.ResMap) (map[string]string, error) return result, err } for _, v := range vars { - id := resource.NewResId(v.ObjRef.GVK(), v.ObjRef.Name) + id := resid.NewResId(v.ObjRef.GVK(), v.ObjRef.Name) if r, found := m.DemandOneMatchForId(id); found { s, err := r.GetFieldValue(v.FieldRef.FieldPath) if err != nil { diff --git a/pkg/target/kusttarget_test.go b/pkg/target/kusttarget_test.go index f582446e1..2c7a8351a 100644 --- a/pkg/target/kusttarget_test.go +++ b/pkg/target/kusttarget_test.go @@ -19,16 +19,17 @@ package target import ( "encoding/base64" "reflect" - "sigs.k8s.io/kustomize/internal/k8sdeps" "strings" "testing" corev1 "k8s.io/api/core/v1" + "sigs.k8s.io/kustomize/internal/k8sdeps" "sigs.k8s.io/kustomize/pkg/constants" "sigs.k8s.io/kustomize/pkg/fs" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/internal/loadertest" - "sigs.k8s.io/kustomize/pkg/loader" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" @@ -87,7 +88,7 @@ metadata: ]` ) -func makeLoader1(t *testing.T) loader.Loader { +func makeLoader1(t *testing.T) ifc.Loader { ldr := loadertest.NewFakeLoader("/testpath") err := ldr.AddFile("/testpath/"+constants.KustomizationFileName, []byte(kustomizationContent1)) if err != nil { @@ -115,7 +116,7 @@ var ns = gvk.Gvk{Version: "v1", Kind: "Namespace"} func TestResources1(t *testing.T) { expected := resmap.ResMap{ - resource.NewResIdWithPrefixNamespace(deploy, "dply1", "foo-", "ns1"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(deploy, "dply1", "foo-", "ns1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -148,7 +149,7 @@ func TestResources1(t *testing.T) { }, }, }), - resource.NewResIdWithPrefixNamespace(cmap, "literalConfigMap", "foo-", "ns1"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(cmap, "literalConfigMap", "foo-", "ns1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -166,8 +167,8 @@ func TestResources1(t *testing.T) { "DB_USERNAME": "admin", "DB_PASSWORD": "somepw", }, - }).SetBehavior(resource.BehaviorCreate), - resource.NewResIdWithPrefixNamespace(secret, "secret", "foo-", "ns1"): resource.NewResourceFromMap( + }).SetBehavior(ifc.BehaviorCreate), + resid.NewResIdWithPrefixNamespace(secret, "secret", "foo-", "ns1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", @@ -186,8 +187,8 @@ func TestResources1(t *testing.T) { "DB_USERNAME": base64.StdEncoding.EncodeToString([]byte("admin")), "DB_PASSWORD": base64.StdEncoding.EncodeToString([]byte("somepw")), }, - }).SetBehavior(resource.BehaviorCreate), - resource.NewResIdWithPrefixNamespace(ns, "ns1", "foo-", ""): resource.NewResourceFromMap( + }).SetBehavior(ifc.BehaviorCreate), + resid.NewResIdWithPrefixNamespace(ns, "ns1", "foo-", ""): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Namespace", diff --git a/pkg/transformerconfig/transformerconfig.go b/pkg/transformerconfig/transformerconfig.go index 7af519e1d..dcb7b2b8f 100644 --- a/pkg/transformerconfig/transformerconfig.go +++ b/pkg/transformerconfig/transformerconfig.go @@ -19,9 +19,10 @@ limitations under the License. package transformerconfig import ( - "github.com/ghodss/yaml" "log" - "sigs.k8s.io/kustomize/pkg/loader" + + "github.com/ghodss/yaml" + "sigs.k8s.io/kustomize/pkg/ifc" "sigs.k8s.io/kustomize/pkg/transformerconfig/defaultconfig" ) @@ -68,7 +69,7 @@ func (t *TransformerConfig) Merge(input *TransformerConfig) *TransformerConfig { } // MakeTransformerConfigFromFiles returns a TranformerConfig object from a list of files -func MakeTransformerConfigFromFiles(ldr loader.Loader, paths []string) (*TransformerConfig, error) { +func MakeTransformerConfigFromFiles(ldr ifc.Loader, paths []string) (*TransformerConfig, error) { result := &TransformerConfig{} for _, path := range paths { data, err := ldr.Load(path) diff --git a/pkg/transformerconfig/transformerconfig_test.go b/pkg/transformerconfig/transformerconfig_test.go index faf65b5ff..7c768aca8 100644 --- a/pkg/transformerconfig/transformerconfig_test.go +++ b/pkg/transformerconfig/transformerconfig_test.go @@ -17,6 +17,7 @@ limitations under the License. package transformerconfig import ( + "sigs.k8s.io/kustomize/pkg/ifc" "testing" "reflect" @@ -149,7 +150,7 @@ func TestMakeDefaultTransformerConfig(t *testing.T) { _ = MakeDefaultTransformerConfig() } -func makeFakeLoaderAndOutput() (loader.Loader, *TransformerConfig, *TransformerConfig) { +func makeFakeLoaderAndOutput() (ifc.Loader, *TransformerConfig, *TransformerConfig) { transformerConfig := ` namePrefix: - path: nameprefix/path diff --git a/pkg/transformers/imagetag_test.go b/pkg/transformers/imagetag_test.go index cba5532c5..c5b2e03a4 100644 --- a/pkg/transformers/imagetag_test.go +++ b/pkg/transformers/imagetag_test.go @@ -18,6 +18,7 @@ package transformers import ( "reflect" + "sigs.k8s.io/kustomize/pkg/resid" "testing" "sigs.k8s.io/kustomize/pkg/gvk" @@ -28,7 +29,7 @@ import ( func TestImageTagTransformer(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -59,7 +60,7 @@ func TestImageTagTransformer(t *testing.T) { }, }, }), - resource.NewResId(gvk.Gvk{Kind: "randomKind"}, "random"): resource.NewResourceFromMap( + resid.NewResId(gvk.Gvk{Kind: "randomKind"}, "random"): resource.NewResourceFromMap( map[string]interface{}{ "spec": map[string]interface{}{ "template": map[string]interface{}{ @@ -96,7 +97,7 @@ func TestImageTagTransformer(t *testing.T) { }), } expected := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -127,7 +128,7 @@ func TestImageTagTransformer(t *testing.T) { }, }, }), - resource.NewResId(gvk.Gvk{Kind: "randomKind"}, "random"): resource.NewResourceFromMap( + resid.NewResId(gvk.Gvk{Kind: "randomKind"}, "random"): resource.NewResourceFromMap( map[string]interface{}{ "spec": map[string]interface{}{ "template": map[string]interface{}{ diff --git a/pkg/transformers/labelsandannotations_test.go b/pkg/transformers/labelsandannotations_test.go index f909af77a..6c8c47ba3 100644 --- a/pkg/transformers/labelsandannotations_test.go +++ b/pkg/transformers/labelsandannotations_test.go @@ -21,6 +21,7 @@ import ( "testing" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" @@ -43,7 +44,7 @@ var ingress = gvk.Gvk{Kind: "Ingress"} func TestLabelsRun(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -51,7 +52,7 @@ func TestLabelsRun(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -77,7 +78,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", @@ -93,7 +94,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(job, "job1"): resource.NewResourceFromMap( + resid.NewResId(job, "job1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1", "kind": "Job", @@ -113,7 +114,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(job, "job2"): resource.NewResourceFromMap( + resid.NewResId(job, "job2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1", "kind": "Job", @@ -138,7 +139,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(cronjob, "cronjob1"): resource.NewResourceFromMap( + resid.NewResId(cronjob, "cronjob1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1beta1", "kind": "CronJob", @@ -163,7 +164,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(cronjob, "cronjob2"): resource.NewResourceFromMap( + resid.NewResId(cronjob, "cronjob2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1beta1", "kind": "CronJob", @@ -195,7 +196,7 @@ func TestLabelsRun(t *testing.T) { }), } expected := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -207,7 +208,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -245,7 +246,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", @@ -269,7 +270,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(job, "job1"): resource.NewResourceFromMap( + resid.NewResId(job, "job1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1", "kind": "Job", @@ -299,7 +300,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(job, "job2"): resource.NewResourceFromMap( + resid.NewResId(job, "job2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1", "kind": "Job", @@ -336,7 +337,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(cronjob, "cronjob1"): resource.NewResourceFromMap( + resid.NewResId(cronjob, "cronjob1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1beta1", "kind": "CronJob", @@ -371,7 +372,7 @@ func TestLabelsRun(t *testing.T) { }, }, }), - resource.NewResId(cronjob, "cronjob2"): resource.NewResourceFromMap( + resid.NewResId(cronjob, "cronjob2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "batch/v1beta1", "kind": "CronJob", @@ -432,7 +433,7 @@ func TestLabelsRun(t *testing.T) { func TestAnnotationsRun(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -440,7 +441,7 @@ func TestAnnotationsRun(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -466,7 +467,7 @@ func TestAnnotationsRun(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", @@ -484,7 +485,7 @@ func TestAnnotationsRun(t *testing.T) { }), } expected := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -496,7 +497,7 @@ func TestAnnotationsRun(t *testing.T) { }, }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -530,7 +531,7 @@ func TestAnnotationsRun(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", diff --git a/pkg/transformers/namehash_test.go b/pkg/transformers/namehash_test.go index 5bebd9b6c..59b1909be 100644 --- a/pkg/transformers/namehash_test.go +++ b/pkg/transformers/namehash_test.go @@ -20,13 +20,15 @@ import ( "reflect" "testing" + "sigs.k8s.io/kustomize/pkg/ifc" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) func TestNameHashTransformer(t *testing.T) { objs := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -34,7 +36,7 @@ func TestNameHashTransformer(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -60,7 +62,7 @@ func TestNameHashTransformer(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", @@ -76,18 +78,18 @@ func TestNameHashTransformer(t *testing.T) { }, }, }), - resource.NewResId(secret, "secret1"): resource.NewResourceFromMap( + resid.NewResId(secret, "secret1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", "metadata": map[string]interface{}{ "name": "secret1", }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), } expected := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -95,7 +97,7 @@ func TestNameHashTransformer(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -121,7 +123,7 @@ func TestNameHashTransformer(t *testing.T) { }, }, }), - resource.NewResId(service, "svc1"): resource.NewResourceFromMap( + resid.NewResId(service, "svc1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Service", @@ -137,14 +139,14 @@ func TestNameHashTransformer(t *testing.T) { }, }, }), - resource.NewResId(secret, "secret1"): resource.NewResourceFromMap( + resid.NewResId(secret, "secret1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", "metadata": map[string]interface{}{ "name": "secret1-7kc45hd5f7", }, - }).SetBehavior(resource.BehaviorCreate), + }).SetBehavior(ifc.BehaviorCreate), } tran := NewNameHashTransformer() diff --git a/pkg/transformers/namereference.go b/pkg/transformers/namereference.go index 609248017..22f8a319e 100644 --- a/pkg/transformers/namereference.go +++ b/pkg/transformers/namereference.go @@ -21,8 +21,8 @@ import ( "fmt" "sigs.k8s.io/kustomize/pkg/gvk" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" - "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" ) @@ -89,7 +89,7 @@ func (o *nameReferenceTransformer) updateNameReference( } } -func (o *nameReferenceTransformer) detectConflict(id resource.ResId, m resmap.ResMap, name string) error { +func (o *nameReferenceTransformer) detectConflict(id resid.ResId, m resmap.ResMap, name string) error { matchedIds := m.FindByGVKN(id) if len(matchedIds) > 1 { return fmt.Errorf("detected conflicts when resolving name references %s:\n%v", name, matchedIds) diff --git a/pkg/transformers/namereference_test.go b/pkg/transformers/namereference_test.go index e3a48e03a..b52351cb4 100644 --- a/pkg/transformers/namereference_test.go +++ b/pkg/transformers/namereference_test.go @@ -20,6 +20,7 @@ import ( "reflect" "testing" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" @@ -27,7 +28,7 @@ import ( func TestNameReferenceRun(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -35,7 +36,7 @@ func TestNameReferenceRun(t *testing.T) { "name": "someprefix-cm1-somehash", }, }), - resource.NewResId(cmap, "cm2"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -43,7 +44,7 @@ func TestNameReferenceRun(t *testing.T) { "name": "someprefix-cm2-somehash", }, }), - resource.NewResId(secret, "secret1"): resource.NewResourceFromMap( + resid.NewResId(secret, "secret1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Secret", @@ -51,7 +52,7 @@ func TestNameReferenceRun(t *testing.T) { "name": "someprefix-secret1-somehash", }, }), - resource.NewResId(pvc, "claim1"): resource.NewResourceFromMap( + resid.NewResId(pvc, "claim1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "PersistentVolumeClaim", @@ -59,7 +60,7 @@ func TestNameReferenceRun(t *testing.T) { "name": "someprefix-claim1", }, }), - resource.NewResId(ingress, "ingress1"): resource.NewResourceFromMap( + resid.NewResId(ingress, "ingress1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "extensions", "apiVersion": "v1beta1", @@ -79,7 +80,7 @@ func TestNameReferenceRun(t *testing.T) { }, }, ), - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -157,7 +158,7 @@ func TestNameReferenceRun(t *testing.T) { }, }, }), - resource.NewResId(statefulset, "statefulset1"): resource.NewResourceFromMap( + resid.NewResId(statefulset, "statefulset1"): resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -194,7 +195,7 @@ func TestNameReferenceRun(t *testing.T) { expected[k] = v } - expected[resource.NewResId(deploy, "deploy1")] = resource.NewResourceFromMap( + expected[resid.NewResId(deploy, "deploy1")] = resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -272,7 +273,7 @@ func TestNameReferenceRun(t *testing.T) { }, }, }) - expected[resource.NewResId(statefulset, "statefulset1")] = resource.NewResourceFromMap( + expected[resid.NewResId(statefulset, "statefulset1")] = resource.NewResourceFromMap( map[string]interface{}{ "group": "apps", "apiVersion": "v1", @@ -302,7 +303,7 @@ func TestNameReferenceRun(t *testing.T) { }, }, }) - expected[resource.NewResId(ingress, "ingress1")] = resource.NewResourceFromMap( + expected[resid.NewResId(ingress, "ingress1")] = resource.NewResourceFromMap( map[string]interface{}{ "group": "extensions", "apiVersion": "v1beta1", diff --git a/pkg/transformers/namespace_test.go b/pkg/transformers/namespace_test.go index b02995b69..5943b59d6 100644 --- a/pkg/transformers/namespace_test.go +++ b/pkg/transformers/namespace_test.go @@ -20,6 +20,7 @@ import ( "reflect" "testing" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" @@ -27,7 +28,7 @@ import ( func TestNamespaceRun(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -35,7 +36,7 @@ func TestNamespaceRun(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(cmap, "cm2"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -44,7 +45,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "foo", }, }), - resource.NewResId(ns, "ns1"): resource.NewResourceFromMap( + resid.NewResId(ns, "ns1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Namespace", @@ -52,7 +53,7 @@ func TestNamespaceRun(t *testing.T) { "name": "ns1", }, }), - resource.NewResId(sa, "default"): resource.NewResourceFromMap( + resid.NewResId(sa, "default"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ServiceAccount", @@ -61,7 +62,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "system", }, }), - resource.NewResId(sa, "service-account"): resource.NewResourceFromMap( + resid.NewResId(sa, "service-account"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ServiceAccount", @@ -70,7 +71,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "system", }, }), - resource.NewResId(crb, "crb"): resource.NewResourceFromMap( + resid.NewResId(crb, "crb"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "rbac.authorization.k8s.io/v1", "kind": "ClusterRoleBinding", @@ -95,7 +96,7 @@ func TestNamespaceRun(t *testing.T) { }, }, }), - resource.NewResId(crd, "crd"): resource.NewResourceFromMap( + resid.NewResId(crd, "crd"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apiextensions.k8s.io/v1beta1", "kind": "CustomResourceDefinition", @@ -105,7 +106,7 @@ func TestNamespaceRun(t *testing.T) { }), } expected := resmap.ResMap{ - resource.NewResIdWithPrefixNamespace(ns, "ns1", "", ""): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(ns, "ns1", "", ""): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "Namespace", @@ -113,7 +114,7 @@ func TestNamespaceRun(t *testing.T) { "name": "ns1", }, }), - resource.NewResIdWithPrefixNamespace(cmap, "cm1", "", "test"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(cmap, "cm1", "", "test"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -122,7 +123,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "test", }, }), - resource.NewResIdWithPrefixNamespace(cmap, "cm2", "", "test"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(cmap, "cm2", "", "test"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -131,7 +132,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "test", }, }), - resource.NewResIdWithPrefixNamespace(sa, "default", "", "test"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(sa, "default", "", "test"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ServiceAccount", @@ -140,7 +141,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "test", }, }), - resource.NewResIdWithPrefixNamespace(sa, "service-account", "", "test"): resource.NewResourceFromMap( + resid.NewResIdWithPrefixNamespace(sa, "service-account", "", "test"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ServiceAccount", @@ -149,7 +150,7 @@ func TestNamespaceRun(t *testing.T) { "namespace": "test", }, }), - resource.NewResId(crb, "crb"): resource.NewResourceFromMap( + resid.NewResId(crb, "crb"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "rbac.authorization.k8s.io/v1", "kind": "ClusterRoleBinding", @@ -174,7 +175,7 @@ func TestNamespaceRun(t *testing.T) { }, }, }), - resource.NewResId(crd, "crd"): resource.NewResourceFromMap( + resid.NewResId(crd, "crd"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apiextensions.k8s.io/v1beta1", "kind": "CustomResourceDefinition", diff --git a/pkg/transformers/patch_test.go b/pkg/transformers/patch_test.go index 7ea276e82..b8f004100 100644 --- a/pkg/transformers/patch_test.go +++ b/pkg/transformers/patch_test.go @@ -21,13 +21,14 @@ import ( "strings" "testing" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" ) func TestOverlayRun(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -87,7 +88,7 @@ func TestOverlayRun(t *testing.T) { ), } expected := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -136,7 +137,7 @@ func TestOverlayRun(t *testing.T) { func TestMultiplePatches(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -215,7 +216,7 @@ func TestMultiplePatches(t *testing.T) { ), } expected := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -266,7 +267,7 @@ func TestMultiplePatches(t *testing.T) { func TestMultiplePatchesWithConflict(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( + resid.NewResId(deploy, "deploy1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apps/v1", "kind": "Deployment", @@ -351,7 +352,7 @@ func TestMultiplePatchesWithConflict(t *testing.T) { func TestNoSchemaOverlayRun(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(foo, "my-foo"): resource.NewResourceFromMap( + resid.NewResId(foo, "my-foo"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "example.com/v1", "kind": "Foo", @@ -383,7 +384,7 @@ func TestNoSchemaOverlayRun(t *testing.T) { ), } expected := resmap.ResMap{ - resource.NewResId(foo, "my-foo"): resource.NewResourceFromMap( + resid.NewResId(foo, "my-foo"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "example.com/v1", "kind": "Foo", @@ -414,7 +415,7 @@ func TestNoSchemaOverlayRun(t *testing.T) { func TestNoSchemaMultiplePatches(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(foo, "my-foo"): resource.NewResourceFromMap( + resid.NewResId(foo, "my-foo"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "example.com/v1", "kind": "Foo", @@ -463,7 +464,7 @@ func TestNoSchemaMultiplePatches(t *testing.T) { ), } expected := resmap.ResMap{ - resource.NewResId(foo, "my-foo"): resource.NewResourceFromMap( + resid.NewResId(foo, "my-foo"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "example.com/v1", "kind": "Foo", @@ -498,7 +499,7 @@ func TestNoSchemaMultiplePatches(t *testing.T) { func TestNoSchemaMultiplePatchesWithConflict(t *testing.T) { base := resmap.ResMap{ - resource.NewResId(foo, "my-foo"): resource.NewResourceFromMap( + resid.NewResId(foo, "my-foo"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "example.com/v1", "kind": "Foo", diff --git a/pkg/transformers/prefixname_test.go b/pkg/transformers/prefixname_test.go index 54599782c..01efbacdf 100644 --- a/pkg/transformers/prefixname_test.go +++ b/pkg/transformers/prefixname_test.go @@ -20,6 +20,7 @@ import ( "reflect" "testing" + "sigs.k8s.io/kustomize/pkg/resid" "sigs.k8s.io/kustomize/pkg/resmap" "sigs.k8s.io/kustomize/pkg/resource" "sigs.k8s.io/kustomize/pkg/transformerconfig" @@ -27,7 +28,7 @@ import ( func TestPrefixNameRun(t *testing.T) { m := resmap.ResMap{ - resource.NewResId(cmap, "cm1"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm1"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -35,7 +36,7 @@ func TestPrefixNameRun(t *testing.T) { "name": "cm1", }, }), - resource.NewResId(cmap, "cm2"): resource.NewResourceFromMap( + resid.NewResId(cmap, "cm2"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -43,7 +44,7 @@ func TestPrefixNameRun(t *testing.T) { "name": "cm2", }, }), - resource.NewResId(crd, "crd"): resource.NewResourceFromMap( + resid.NewResId(crd, "crd"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apiextensions.k8s.io/v1beta1", "kind": "CustomResourceDefinition", @@ -53,7 +54,7 @@ func TestPrefixNameRun(t *testing.T) { }), } expected := resmap.ResMap{ - resource.NewResIdWithPrefix(cmap, "cm1", "someprefix-"): resource.NewResourceFromMap( + resid.NewResIdWithPrefix(cmap, "cm1", "someprefix-"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -61,7 +62,7 @@ func TestPrefixNameRun(t *testing.T) { "name": "someprefix-cm1", }, }), - resource.NewResIdWithPrefix(cmap, "cm2", "someprefix-"): resource.NewResourceFromMap( + resid.NewResIdWithPrefix(cmap, "cm2", "someprefix-"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "v1", "kind": "ConfigMap", @@ -69,7 +70,7 @@ func TestPrefixNameRun(t *testing.T) { "name": "someprefix-cm2", }, }), - resource.NewResId(crd, "crd"): resource.NewResourceFromMap( + resid.NewResId(crd, "crd"): resource.NewResourceFromMap( map[string]interface{}{ "apiVersion": "apiextensions.k8s.io/v1beta1", "kind": "CustomResourceDefinition", diff --git a/vendor/github.com/hashicorp/go-getter/test-fixtures/basic-hg/.hg/dirstate b/vendor/github.com/hashicorp/go-getter/test-fixtures/basic-hg/.hg/dirstate index cefc2b1585d9d98421c313065c0569f7d834659b..099f7b42b99450a8d59708c436c31ec1b52fb4a0 100644 GIT binary patch delta 49 vcma!un4qJxgn@y9Eqa^xYaq>@mY=UzQc;q}z|aU1*N2JcCT8a8m81axTK*0o delta 49 ucma!un4qJxfPsO5ExN(z2ask@%g@&%+uz6EpMlO40yKlns;s