38 lines
1.3 KiB
Go Template
38 lines
1.3 KiB
Go Template
# Test for issue #2353: Environment values should replace default arrays entirely
|
|
#
|
|
# This tests that the default sparse array-merge behavior in GetMergedValues()
|
|
# (ArrayMergeStrategySparse) correctly auto-detects that a complete override array
|
|
# without nils should replace the default array entirely rather than merge element-wise.
|
|
#
|
|
# Expected behavior:
|
|
# - default values define: myList: [default1, default2, default3]
|
|
# - environment values override: myList: [override1, override2]
|
|
# - Result should be: myList: [override1, override2] (REPLACED via sparse auto-detection)
|
|
# - Before fix: myList: [override1, override2, default3] (incorrectly merged element-by-element)
|
|
|
|
# Default values that go to e.Defaults
|
|
values:
|
|
- defaults.yaml
|
|
|
|
environments:
|
|
default:
|
|
# Environment values that go to e.Values and should replace defaults
|
|
values:
|
|
- overrides.yaml
|
|
|
|
---
|
|
releases:
|
|
- name: test
|
|
chart: ../../../charts/raw
|
|
values:
|
|
- templates:
|
|
- |
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: TestConfig
|
|
data:
|
|
# Arrays should be REPLACED (2 elements each), not merged (3 elements)
|
|
myList: {{ toJson .Values.myList }}
|
|
innerArray: {{ toJson .Values.nested.innerArray }}
|