mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-11 17:12:51 +00:00
Always tag label and annotations values as strings.
This commit is contained in:
@@ -52,11 +52,13 @@ func makeConfigMapValueRNode(s string) (field string, rN *RNode) {
|
||||
}
|
||||
|
||||
func (rn *RNode) LoadMapIntoSecretData(m map[string]string) error {
|
||||
mapNode, err := rn.Pipe(LookupCreate(MappingNode, DataField))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, k := range SortedMapKeys(m) {
|
||||
vrN := makeSecretValueRNode(m[k])
|
||||
if _, err := rn.Pipe(
|
||||
LookupCreate(MappingNode, DataField),
|
||||
SetField(k, vrN)); err != nil {
|
||||
if _, err := mapNode.Pipe(SetField(k, vrN)); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -372,18 +372,7 @@ func (rn *RNode) GetAnnotations() (map[string]string, error) {
|
||||
|
||||
// SetAnnotations tries to set the metadata annotations field.
|
||||
func (rn *RNode) SetAnnotations(m map[string]string) error {
|
||||
meta, err := rn.Pipe(Lookup(MetadataField))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(m) == 0 {
|
||||
if meta == nil {
|
||||
return nil
|
||||
}
|
||||
return meta.PipeE(Clear(AnnotationsField))
|
||||
}
|
||||
return rn.SetMapField(
|
||||
NewMapRNode(&m), MetadataField, AnnotationsField)
|
||||
return rn.setMapInMetadata(m, AnnotationsField)
|
||||
}
|
||||
|
||||
// GetLabels gets the metadata labels field.
|
||||
@@ -397,18 +386,32 @@ func (rn *RNode) GetLabels() (map[string]string, error) {
|
||||
|
||||
// SetLabels sets the metadata labels field.
|
||||
func (rn *RNode) SetLabels(m map[string]string) error {
|
||||
return rn.setMapInMetadata(m, LabelsField)
|
||||
}
|
||||
|
||||
// This established proper quoting on string values, and sorts by key.
|
||||
func (rn *RNode) setMapInMetadata(m map[string]string, field string) error {
|
||||
meta, err := rn.Pipe(Lookup(MetadataField))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = meta.PipeE(Clear(field)); err != nil {
|
||||
return err
|
||||
}
|
||||
if len(m) == 0 {
|
||||
if meta == nil {
|
||||
return nil
|
||||
}
|
||||
return meta.PipeE(Clear(LabelsField))
|
||||
mapNode, err := meta.Pipe(LookupCreate(MappingNode, field))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return rn.SetMapField(
|
||||
NewMapRNode(&m), MetadataField, LabelsField)
|
||||
for _, k := range SortedMapKeys(m) {
|
||||
if _, err := mapNode.Pipe(
|
||||
SetField(k, NewStringRNode(m[k]))); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (rn *RNode) SetMapField(value *RNode, path ...string) error {
|
||||
|
||||
Reference in New Issue
Block a user