File tree Expand file tree Collapse file tree 2 files changed +64
-1
lines changed
Expand file tree Collapse file tree 2 files changed +64
-1
lines changed Original file line number Diff line number Diff line change @@ -288,7 +288,7 @@ var transformerConfigurators = map[builtinhelpers.BuiltinPluginType]func(
288288 } else {
289289 // merge spec/template/metadata fieldSpec if includeTemplate flag is true
290290 if label .IncludeTemplates {
291- fss , err = fss .MergeOne (types.FieldSpec {Path : "spec/template/metadata/labels" , CreateIfNotPresent : false })
291+ fss , err = fss .MergeOne (types.FieldSpec {Path : "spec/template/metadata/labels" , CreateIfNotPresent : true })
292292 if err != nil {
293293 return nil , errors .Wrap (err , "failed to merge template fieldSpec" )
294294 }
Original file line number Diff line number Diff line change @@ -160,3 +160,66 @@ spec:
160160 foo: bar
161161` )
162162}
163+
164+ func TestKustomizationLabelsInTemplateWhenLabelsIsNil (t * testing.T ) {
165+ th := kusttest_test .MakeHarness (t )
166+ th .WriteF ("app/deployment.yaml" , `
167+ apiVersion: apps/v1
168+ kind: Deployment
169+ metadata:
170+ name: deployment
171+ spec:
172+ replicas: 1
173+ template:
174+ spec:
175+ containers:
176+ - name: test-server
177+ image: test-server
178+ ` )
179+ th .WriteK ("/app" , `
180+ resources:
181+ - deployment.yaml
182+
183+ commonLabels:
184+ app: test-server
185+
186+ labels:
187+ - pairs:
188+ app.kubernetes.io/component: a
189+ app.kubernetes.io/instance: b
190+ app.kubernetes.io/name: c
191+ app.kubernetes.io/part-of: d
192+ includeSelectors: false
193+ includeTemplates: true
194+ ` )
195+ m := th .Run ("/app" , th .MakeDefaultOptions ())
196+ th .AssertActualEqualsExpected (m , `
197+ apiVersion: apps/v1
198+ kind: Deployment
199+ metadata:
200+ labels:
201+ app: test-server
202+ app.kubernetes.io/component: a
203+ app.kubernetes.io/instance: b
204+ app.kubernetes.io/name: c
205+ app.kubernetes.io/part-of: d
206+ name: deployment
207+ spec:
208+ replicas: 1
209+ selector:
210+ matchLabels:
211+ app: test-server
212+ template:
213+ metadata:
214+ labels:
215+ app: test-server
216+ app.kubernetes.io/component: a
217+ app.kubernetes.io/instance: b
218+ app.kubernetes.io/name: c
219+ app.kubernetes.io/part-of: d
220+ spec:
221+ containers:
222+ - image: test-server
223+ name: test-server
224+ ` )
225+ }
You can’t perform that action at this time.
0 commit comments