Start supporting strategic merge patch in kyaml merge2.

This commit is contained in:
jregan
2020-06-28 11:39:14 -07:00
parent 2153863355
commit ef04983392
7 changed files with 375 additions and 2 deletions

View File

@@ -60,8 +60,20 @@ func (m Merger) VisitMap(nodes walk.Sources, s *openapi.ResourceSchema) (*yaml.R
// clear the value
return walk.ClearNode, nil
}
// Recursively Merge dest
return nodes.Dest(), nil
ps, err := determineMappingNodePatchStrategy(nodes.Origin())
if err != nil {
return nil, err
}
switch ps {
case smpDelete:
return walk.ClearNode, nil
case smpReplace:
return nodes.Origin(), nil
default:
return nodes.Dest(), nil
}
}
func (m Merger) VisitScalar(nodes walk.Sources, s *openapi.ResourceSchema) (*yaml.RNode, error) {