From 5d8722a7866dc53bc8c281c82f663267411484c1 Mon Sep 17 00:00:00 2001 From: Phani Teja Marupaka Date: Sun, 16 Aug 2020 15:54:34 -0700 Subject: [PATCH] Print message if subst doesn't match any field value --- kyaml/setters2/settersutil/settercreator.go | 3 ++- .../settersutil/substitutioncreator.go | 25 ++++++++++++------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/kyaml/setters2/settersutil/settercreator.go b/kyaml/setters2/settersutil/settercreator.go index 8c09ee584..0ea58d4fb 100644 --- a/kyaml/setters2/settersutil/settercreator.go +++ b/kyaml/setters2/settersutil/settercreator.go @@ -78,7 +78,8 @@ func (c SetterCreator) Create(openAPIPath, resourcesPath string) error { Outputs: []kio.Writer{inout}, }.Execute() if a.Count == 0 { - fmt.Printf("setter %s doesn't match any field in resources, but creating setter definition\n", c.Name) + fmt.Printf("setter %s doesn't match any field in resource configs, "+ + "but creating setter definition\n", c.Name) } if err != nil { return err diff --git a/kyaml/setters2/settersutil/substitutioncreator.go b/kyaml/setters2/settersutil/substitutioncreator.go index 1aa49e9db..2260b6260 100644 --- a/kyaml/setters2/settersutil/substitutioncreator.go +++ b/kyaml/setters2/settersutil/substitutioncreator.go @@ -123,18 +123,25 @@ func (c SubstitutionCreator) Create(openAPIPath, resourcesPath string) error { return err } - // Update the resources with the setter reference + a := &setters2.Add{ + FieldName: c.FieldName, + FieldValue: c.FieldValue, + Ref: fieldmeta.DefinitionsPrefix + fieldmeta.SubstitutionDefinitionPrefix + c.Name, + } + + // Update the resources with the substitution reference inout := &kio.LocalPackageReadWriter{PackagePath: resourcesPath} - return kio.Pipeline{ - Inputs: []kio.Reader{inout}, - Filters: []kio.Filter{kio.FilterAll( - &setters2.Add{ - FieldName: c.FieldName, - FieldValue: c.FieldValue, - Ref: fieldmeta.DefinitionsPrefix + fieldmeta.SubstitutionDefinitionPrefix + c.Name, - })}, + err = kio.Pipeline{ + Inputs: []kio.Reader{inout}, + Filters: []kio.Filter{kio.FilterAll(a)}, Outputs: []kio.Writer{inout}, }.Execute() + + if a.Count == 0 { + fmt.Printf("substitution %s doesn't match any field value in resource configs, "+ + "but creating substitution definition\n", c.Name) + } + return err } // createMarkersAndRefs takes the input pattern, creates setter/substitution markers