@@ -34,19 +34,19 @@ const (
34
34
label
35
35
)
36
36
37
- func (kind KindOfAdd ) String () string {
37
+ func (k KindOfAdd ) String () string {
38
38
kinds := [... ]string {
39
39
"annotation" ,
40
40
"label" ,
41
41
}
42
- if kind < 0 || kind > 1 {
42
+ if k < 0 || k > 1 {
43
43
return "Unknown metadatakind"
44
44
}
45
- return kinds [kind ]
45
+ return kinds [k ]
46
46
}
47
47
48
48
type addMetadataOptions struct {
49
- metadata string
49
+ metadata map [ string ] string
50
50
}
51
51
52
52
// newCmdAddAnnotation adds one or more commonAnnotations to the kustomization file.
@@ -108,8 +108,13 @@ func (o *addMetadataOptions) Validate(args []string, k KindOfAdd) error {
108
108
return fmt .Errorf ("invalid %s format: %s" , k , input )
109
109
}
110
110
}
111
-
112
- o .metadata = args [0 ]
111
+ //parse annotation keys and values into metadata
112
+ entries := strings .Split (args [0 ], "," )
113
+ o .metadata = make (map [string ]string )
114
+ for _ , entry := range entries {
115
+ kv := strings .Split (entry , ":" )
116
+ o .metadata [kv [0 ]] = kv [1 ]
117
+ }
113
118
return nil
114
119
}
115
120
@@ -133,20 +138,18 @@ func (o *addMetadataOptions) RunAddMetadata(fsys fs.FileSystem, k KindOfAdd) err
133
138
m .CommonAnnotations = make (map [string ]string )
134
139
}
135
140
136
- entries := strings .Split (o .metadata , "," )
137
- for _ , entry := range entries {
138
- kv := strings .Split (entry , ":" )
141
+ for key , value := range o .metadata {
139
142
if k == label {
140
- if _ , ok := m .CommonLabels [kv [ 0 ] ]; ok {
141
- return fmt .Errorf ("%s %s already in kustomization file" , k , kv [ 0 ] )
143
+ if _ , ok := m .CommonLabels [key ]; ok {
144
+ return fmt .Errorf ("%s %s already in kustomization file" , k , key )
142
145
}
143
- m .CommonLabels [kv [ 0 ]] = kv [ 1 ]
146
+ m .CommonLabels [key ] = value
144
147
}
145
148
if k == annotation {
146
- if _ , ok := m .CommonAnnotations [kv [ 0 ] ]; ok {
147
- return fmt .Errorf ("%s %s already in kustomization file" , k , kv [ 0 ] )
149
+ if _ , ok := m .CommonAnnotations [key ]; ok {
150
+ return fmt .Errorf ("%s %s already in kustomization file" , k , key )
148
151
}
149
- m .CommonAnnotations [kv [ 0 ]] = kv [ 1 ]
152
+ m .CommonAnnotations [key ] = value
150
153
}
151
154
}
152
155
0 commit comments