test to demonstrate multiple fieldpaths issue in replacements

This commit is contained in:
Natasha Sarkar
2021-05-27 12:01:58 -07:00
parent d9435bd1b1
commit 74b0b3adc6

View File

@@ -1338,6 +1338,84 @@ spec:
`,
expectedErr: "delimiter option can only be used with scalar nodes",
},
// test to demonstrate https://github.com/kubernetes-sigs/kustomize/issues/3927
// the source field is overwritten when there are multiple fieldPaths
"multiple field paths in target": {
input: `apiVersion: v1
kind: ConfigMap
metadata:
name: source
data:
value: example
---
apiVersion: kubernetes-client.io/v1
kind: ExternalSecret
metadata:
name: some-secret
spec:
backendType: secretsManager
data:
- key: some-prefix-replaceme
name: first
version: latest
property: first
- key: some-prefix-replaceme
name: second
version: latest
property: second
- key: some-prefix-replaceme
name: third
version: latest
property: third
`,
replacements: `replacements:
- source:
kind: ConfigMap
version: v1
name: source
fieldPath: data.value
targets:
- select:
group: kubernetes-client.io
version: v1
kind: ExternalSecret
name: some-secret
fieldPaths:
- spec.data.0.key
- spec.data.1.key
- spec.data.2.key
options:
delimiter: "-"
index: 2
`,
expected: `apiVersion: v1
kind: ConfigMap
metadata:
name: source
data:
value: some-prefix-some-prefix-some-prefix-example
---
apiVersion: kubernetes-client.io/v1
kind: ExternalSecret
metadata:
name: some-secret
spec:
backendType: secretsManager
data:
- key: some-prefix-example
name: first
version: latest
property: first
- key: some-prefix-some-prefix-example
name: second
version: latest
property: second
- key: some-prefix-some-prefix-some-prefix-example
name: third
version: latest
property: third
`,
},
}
for tn, tc := range testCases {