From 93db0ef3e9a4cd1d23a2392c2a39dd37bfd188f9 Mon Sep 17 00:00:00 2001 From: Arnaud Delobelle Date: Fri, 21 Jun 2019 21:08:59 +0100 Subject: [PATCH] Iterate over fieldspecs for name tranformations --- plugin/builtin/PrefixSuffixTransformer.go | 44 ++++++++----------- .../PrefixSuffixTransformer.go | 42 +++++++----------- 2 files changed, 35 insertions(+), 51 deletions(-) diff --git a/plugin/builtin/PrefixSuffixTransformer.go b/plugin/builtin/PrefixSuffixTransformer.go index 4f7482d0d..6ee54d0f0 100644 --- a/plugin/builtin/PrefixSuffixTransformer.go +++ b/plugin/builtin/PrefixSuffixTransformer.go @@ -23,7 +23,7 @@ type PrefixSuffixTransformerPlugin struct { //noinspection GoUnusedGlobalVariable func NewPrefixSuffixTransformerPlugin() *PrefixSuffixTransformerPlugin { - return &PrefixSuffixTransformerPlugin{} + return &PrefixSuffixTransformerPlugin{} } // Not placed in a file yet due to lack of demand. @@ -56,21 +56,23 @@ func (p *PrefixSuffixTransformerPlugin) Transform(m resmap.ResMap) error { if p.shouldSkip(r.OrgId()) { continue } - fs, ok := p.shouldInclude(r.OrgId()) - if !ok { - continue - } - if smellsLikeANameChange(fs) { - r.AddNamePrefix(p.Prefix) - r.AddNameSuffix(p.Suffix) - } - err := transformers.MutateField( - r.Map(), - fs.PathSlice(), - fs.CreateIfNotPresent, - p.addPrefixSuffix) - if err != nil { - return err + id := r.OrgId() + for _, path := range p.FieldSpecs { + if !id.IsSelected(&path.Gvk) { + continue + } + if smellsLikeANameChange(&path) { + r.AddNamePrefix(p.Prefix) + r.AddNameSuffix(p.Suffix) + } + err := transformers.MutateField( + r.Map(), + path.PathSlice(), + path.CreateIfNotPresent, + p.addPrefixSuffix) + if err != nil { + return err + } } } return nil @@ -80,16 +82,6 @@ func smellsLikeANameChange(fs *config.FieldSpec) bool { return fs.Path == "metadata/name" } -func (p *PrefixSuffixTransformerPlugin) shouldInclude( - id resid.ResId) (*config.FieldSpec, bool) { - for _, path := range p.FieldSpecs { - if id.IsSelected(&path.Gvk) { - return &path, true - } - } - return nil, false -} - func (p *PrefixSuffixTransformerPlugin) shouldSkip( id resid.ResId) bool { for _, path := range prefixSuffixFieldSpecsToSkip { diff --git a/plugin/builtin/prefixsuffixtransformer/PrefixSuffixTransformer.go b/plugin/builtin/prefixsuffixtransformer/PrefixSuffixTransformer.go index e800afcde..4e490ef45 100644 --- a/plugin/builtin/prefixsuffixtransformer/PrefixSuffixTransformer.go +++ b/plugin/builtin/prefixsuffixtransformer/PrefixSuffixTransformer.go @@ -57,21 +57,23 @@ func (p *plugin) Transform(m resmap.ResMap) error { if p.shouldSkip(r.OrgId()) { continue } - fs, ok := p.shouldInclude(r.OrgId()) - if !ok { - continue - } - if smellsLikeANameChange(fs) { - r.AddNamePrefix(p.Prefix) - r.AddNameSuffix(p.Suffix) - } - err := transformers.MutateField( - r.Map(), - fs.PathSlice(), - fs.CreateIfNotPresent, - p.addPrefixSuffix) - if err != nil { - return err + id := r.OrgId() + for _, path := range p.FieldSpecs { + if !id.IsSelected(&path.Gvk) { + continue + } + if smellsLikeANameChange(&path) { + r.AddNamePrefix(p.Prefix) + r.AddNameSuffix(p.Suffix) + } + err := transformers.MutateField( + r.Map(), + path.PathSlice(), + path.CreateIfNotPresent, + p.addPrefixSuffix) + if err != nil { + return err + } } } return nil @@ -81,16 +83,6 @@ func smellsLikeANameChange(fs *config.FieldSpec) bool { return fs.Path == "metadata/name" } -func (p *plugin) shouldInclude( - id resid.ResId) (*config.FieldSpec, bool) { - for _, path := range p.FieldSpecs { - if id.IsSelected(&path.Gvk) { - return &path, true - } - } - return nil, false -} - func (p *plugin) shouldSkip( id resid.ResId) bool { for _, path := range prefixSuffixFieldSpecsToSkip {