mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-05-17 18:25:26 +00:00
107 lines
2.0 KiB
Go
107 lines
2.0 KiB
Go
// Copyright 2019 The Kubernetes Authors.
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package krusty_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
|
|
)
|
|
|
|
func TestNamespacedGenerator(t *testing.T) {
|
|
th := kusttest_test.MakeHarness(t)
|
|
th.WriteK(".", `
|
|
configMapGenerator:
|
|
- name: the-non-default-namespace-map
|
|
namespace: non-default
|
|
literals:
|
|
- altGreeting=Good Morning from non-default namespace!
|
|
- enableRisky="false"
|
|
- name: the-map
|
|
literals:
|
|
- altGreeting=Good Morning from default namespace!
|
|
- enableRisky="false"
|
|
|
|
secretGenerator:
|
|
- name: the-non-default-namespace-secret
|
|
namespace: non-default
|
|
literals:
|
|
- password.txt=verySecret
|
|
- name: the-secret
|
|
literals:
|
|
- password.txt=anotherSecret
|
|
`)
|
|
m := th.Run(".", th.MakeDefaultOptions())
|
|
th.AssertActualEqualsExpected(m, `
|
|
apiVersion: v1
|
|
data:
|
|
altGreeting: Good Morning from non-default namespace!
|
|
enableRisky: "false"
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: the-non-default-namespace-map-64b2md8tth
|
|
namespace: non-default
|
|
---
|
|
apiVersion: v1
|
|
data:
|
|
altGreeting: Good Morning from default namespace!
|
|
enableRisky: "false"
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: the-map-tg7t5hk8bk
|
|
---
|
|
apiVersion: v1
|
|
data:
|
|
password.txt: dmVyeVNlY3JldA==
|
|
kind: Secret
|
|
metadata:
|
|
name: the-non-default-namespace-secret-8tc9gdd76t
|
|
namespace: non-default
|
|
type: Opaque
|
|
---
|
|
apiVersion: v1
|
|
data:
|
|
password.txt: YW5vdGhlclNlY3JldA==
|
|
kind: Secret
|
|
metadata:
|
|
name: the-secret-6557m7fcg8
|
|
type: Opaque
|
|
`)
|
|
}
|
|
|
|
func TestNamespacedGeneratorWithOverlays(t *testing.T) {
|
|
th := kusttest_test.MakeHarness(t)
|
|
th.WriteK("base", `
|
|
namespace: base
|
|
|
|
configMapGenerator:
|
|
- name: testCase
|
|
literals:
|
|
- base=apple
|
|
`)
|
|
th.WriteK("overlay", `
|
|
resources:
|
|
- ../base
|
|
|
|
namespace: overlay
|
|
|
|
configMapGenerator:
|
|
- name: testCase
|
|
behavior: merge
|
|
literals:
|
|
- overlay=peach
|
|
`)
|
|
m := th.Run("overlay", th.MakeDefaultOptions())
|
|
th.AssertActualEqualsExpected(m, `
|
|
apiVersion: v1
|
|
data:
|
|
base: apple
|
|
overlay: peach
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: testCase-gmfch8gkbt
|
|
namespace: overlay
|
|
`)
|
|
}
|