diff --git a/plugin/builtin/patchtransformer/PatchTransformer_test.go b/plugin/builtin/patchtransformer/PatchTransformer_test.go index eb287a991..ac1bbb750 100644 --- a/plugin/builtin/patchtransformer/PatchTransformer_test.go +++ b/plugin/builtin/patchtransformer/PatchTransformer_test.go @@ -636,3 +636,66 @@ spec: path: /canada `) } + +// test for https://github.com/kubernetes-sigs/kustomize/issues/2767 +// currently documents broken state. resulting ports: should have both +// take-over-the-world and disappearing-act on 8080 +func TestPatchTransformerSimilarArrays(t *testing.T) { + th := kusttest_test.MakeEnhancedHarness(t). + PrepBuiltin("PatchTransformer") + defer th.Reset() + + th.RunTransformerAndCheckResult(` +apiVersion: builtin +kind: PatchTransformer +metadata: + name: test-transformer +patch: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: test-transformer + labels: + test-transformer: did-my-job +target: + kind: Deployment + name: test-deployment +`, `apiVersion: apps/v1 +kind: Deployment +metadata: + name: test-deployment +spec: + template: + spec: + containers: + - image: test-image + name: test-deployment + ports: + - containerPort: 8080 + name: take-over-the-world + protocol: TCP + - containerPort: 8080 + name: disappearing-act + protocol: TCP +`, ` +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + test-transformer: did-my-job + name: test-deployment +spec: + template: + spec: + containers: + - image: test-image + name: test-deployment + ports: + - containerPort: 8080 + name: take-over-the-world + protocol: TCP + - containerPort: 8080 + name: take-over-the-world + protocol: TCP +`) +}