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 {
|
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) {
|
for _, k := range SortedMapKeys(m) {
|
||||||
vrN := makeSecretValueRNode(m[k])
|
vrN := makeSecretValueRNode(m[k])
|
||||||
if _, err := rn.Pipe(
|
if _, err := mapNode.Pipe(SetField(k, vrN)); err != nil {
|
||||||
LookupCreate(MappingNode, DataField),
|
|
||||||
SetField(k, vrN)); err != nil {
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -372,18 +372,7 @@ func (rn *RNode) GetAnnotations() (map[string]string, error) {
|
|||||||
|
|
||||||
// SetAnnotations tries to set the metadata annotations field.
|
// SetAnnotations tries to set the metadata annotations field.
|
||||||
func (rn *RNode) SetAnnotations(m map[string]string) error {
|
func (rn *RNode) SetAnnotations(m map[string]string) error {
|
||||||
meta, err := rn.Pipe(Lookup(MetadataField))
|
return rn.setMapInMetadata(m, AnnotationsField)
|
||||||
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)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLabels gets the metadata labels field.
|
// GetLabels gets the metadata labels field.
|
||||||
@@ -397,18 +386,32 @@ func (rn *RNode) GetLabels() (map[string]string, error) {
|
|||||||
|
|
||||||
// SetLabels sets the metadata labels field.
|
// SetLabels sets the metadata labels field.
|
||||||
func (rn *RNode) SetLabels(m map[string]string) error {
|
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))
|
meta, err := rn.Pipe(Lookup(MetadataField))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if err = meta.PipeE(Clear(field)); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if len(m) == 0 {
|
if len(m) == 0 {
|
||||||
if meta == nil {
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return meta.PipeE(Clear(LabelsField))
|
mapNode, err := meta.Pipe(LookupCreate(MappingNode, field))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
return rn.SetMapField(
|
for _, k := range SortedMapKeys(m) {
|
||||||
NewMapRNode(&m), MetadataField, LabelsField)
|
if _, err := mapNode.Pipe(
|
||||||
|
SetField(k, NewStringRNode(m[k]))); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (rn *RNode) SetMapField(value *RNode, path ...string) error {
|
func (rn *RNode) SetMapField(value *RNode, path ...string) error {
|
||||||
|
|||||||
Reference in New Issue
Block a user