# Three-layer merge example: ConfigMap (base) + Secret (overlay) + inline. # # Expected rendered values: # - replicaCount: 2 (from inline — wins over everything) # - resources.limits.cpu: 500m (from Secret — wins over CM on conflict) # - resources.limits.memory: 256Mi (from CM — Secret didn't set it, preserved) # - ui.color: "#34577c" (from CM — no other source sets it) # # Single self-contained manifest: both the ConfigMap and Secret are bundled. # Apply with: # kubectl apply -f secret-and-inline.yaml apiVersion: v1 kind: ConfigMap metadata: name: podinfo-base data: values.yaml: | replicaCount: 1 resources: limits: cpu: 100m memory: 256Mi ui: color: "#34577c" --- apiVersion: v1 kind: Secret metadata: name: podinfo-overlay type: Opaque stringData: values.yaml: | resources: limits: cpu: 500m --- apiVersion: core.oam.dev/v1beta1 kind: Application metadata: name: podinfo-layered spec: components: - name: podinfo type: helmchart properties: chart: source: podinfo repoURL: https://stefanprodan.github.io/podinfo version: "6.11.1" release: name: podinfo-layered namespace: default values: replicaCount: 2 valuesFrom: - kind: ConfigMap name: podinfo-base - kind: Secret name: podinfo-overlay options: createNamespace: true skipTests: true