mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-11 00:52:55 +00:00
Add kunstruct impl of Get/SetDataMap, replace Resource.Merge
This commit is contained in:
@@ -7,6 +7,7 @@ package kunstruct
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
jsonpatch "github.com/evanphx/json-patch"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
@@ -249,6 +250,29 @@ func (fs *UnstructAdapter) GetStringMap(path string) (map[string]string, error)
|
||||
return nil, NoFieldError{Field: path}
|
||||
}
|
||||
|
||||
func (fs *UnstructAdapter) GetDataMap() map[string]string {
|
||||
m, err := fs.GetStringMap("data")
|
||||
if err != nil {
|
||||
return map[string]string{}
|
||||
}
|
||||
return m
|
||||
}
|
||||
|
||||
func (fs *UnstructAdapter) SetDataMap(m map[string]string) {
|
||||
if m == nil {
|
||||
unstructured.RemoveNestedField(fs.Object, "data")
|
||||
return
|
||||
}
|
||||
s := make(map[string]interface{}, len(m))
|
||||
for i, v := range m {
|
||||
s[i] = v
|
||||
}
|
||||
err := unstructured.SetNestedMap(fs.Object, s, "data")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
// GetMap returns value at the given fieldpath.
|
||||
func (fs *UnstructAdapter) GetMap(path string) (map[string]interface{}, error) {
|
||||
content, fields, found, err := fs.selectSubtree(path)
|
||||
|
||||
Reference in New Issue
Block a user