...
1
2
3
4 package krusty_test
5
6 import (
7 "testing"
8
9 kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
10 )
11
12 func TestSecretGenerator(t *testing.T) {
13 th := kusttest_test.MakeHarness(t)
14 th.WriteK(".", `
15 secretGenerator:
16 - name: bob
17 literals:
18 - FRUIT=apple
19 - VEGETABLE=carrot
20 files:
21 - foo.env
22 - passphrase=phrase.dat
23 envs:
24 - foo.env
25 `)
26 th.WriteF("foo.env", `
27 MOUNTAIN=everest
28 OCEAN=pacific
29 `)
30 th.WriteF("phrase.dat", "dat phrase")
31 m := th.Run(".", th.MakeDefaultOptions())
32 th.AssertActualEqualsExpected(m, `
33 apiVersion: v1
34 data:
35 FRUIT: YXBwbGU=
36 MOUNTAIN: ZXZlcmVzdA==
37 OCEAN: cGFjaWZpYw==
38 VEGETABLE: Y2Fycm90
39 foo.env: Ck1PVU5UQUlOPWV2ZXJlc3QKT0NFQU49cGFjaWZpYwo=
40 passphrase: ZGF0IHBocmFzZQ==
41 kind: Secret
42 metadata:
43 name: bob-bh645k7tmg
44 type: Opaque
45 `)
46 }
47
48 func TestGeneratorOptionsWithBases(t *testing.T) {
49 th := kusttest_test.MakeHarness(t)
50 th.WriteK("base", `
51 generatorOptions:
52 disableNameSuffixHash: true
53 labels:
54 foo: bar
55 configMapGenerator:
56 - name: shouldNotHaveHash
57 literals:
58 - foo=bar
59 `)
60 th.WriteK("overlay", `
61 resources:
62 - ../base
63 generatorOptions:
64 disableNameSuffixHash: false
65 labels:
66 fruit: apple
67 configMapGenerator:
68 - name: shouldHaveHash
69 literals:
70 - fruit=apple
71 `)
72 m := th.Run("overlay", th.MakeDefaultOptions())
73 th.AssertActualEqualsExpected(m, `
74 apiVersion: v1
75 data:
76 foo: bar
77 kind: ConfigMap
78 metadata:
79 labels:
80 foo: bar
81 name: shouldNotHaveHash
82 ---
83 apiVersion: v1
84 data:
85 fruit: apple
86 kind: ConfigMap
87 metadata:
88 labels:
89 fruit: apple
90 name: shouldHaveHash-c9867f8446
91 `)
92 }
93
94 func TestGeneratorOptionsOverlayDisableNameSuffixHash(t *testing.T) {
95 th := kusttest_test.MakeHarness(t)
96 th.WriteK("base", `
97 generatorOptions:
98 disableNameSuffixHash: false
99 labels:
100 foo: bar
101 configMapGenerator:
102 - name: baseShouldHaveHashButOverlayShouldNot
103 literals:
104 - foo=bar
105 `)
106 th.WriteK("overlay", `
107 resources:
108 - ../base
109 generatorOptions:
110 disableNameSuffixHash: true
111 labels:
112 fruit: apple
113 configMapGenerator:
114 - name: baseShouldHaveHashButOverlayShouldNot
115 behavior: merge
116 literals:
117 - fruit=apple
118 `)
119 m := th.Run("overlay", th.MakeDefaultOptions())
120 th.AssertActualEqualsExpected(m, `
121 apiVersion: v1
122 data:
123 foo: bar
124 fruit: apple
125 kind: ConfigMap
126 metadata:
127 labels:
128 foo: bar
129 fruit: apple
130 name: baseShouldHaveHashButOverlayShouldNot
131 `)
132 }
133
View as plain text