...
1
2
3
4 package krusty_test
5
6 import (
7 "testing"
8
9 "sigs.k8s.io/kustomize/api/types"
10
11 kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
12 )
13
14
15
16
17 func TestCustomNamePrefixer(t *testing.T) {
18 th := kusttest_test.MakeEnhancedHarness(t)
19 th.GetPluginConfig().BpLoadingOptions = types.BploUseStaticallyLinked
20 defer th.Reset()
21
22 th.WriteK(".", `
23 resources:
24 - deployment.yaml
25 - role.yaml
26 - service.yaml
27 transformers:
28 - prefixer.yaml
29 `)
30 th.WriteF("prefixer.yaml", `
31 apiVersion: builtin
32 kind: PrefixSuffixTransformer
33 metadata:
34 name: customPrefixer
35 prefix: zzz-
36 fieldSpecs:
37 - kind: Deployment
38 path: metadata/name
39 - kind: Service
40 path: metadata/name
41 `)
42 th.WriteF("deployment.yaml", `
43 apiVersion: apps/v1
44 kind: Deployment
45 metadata:
46 name: myDeployment
47 spec:
48 template:
49 metadata:
50 labels:
51 backend: awesome
52 spec:
53 containers:
54 - name: whatever
55 image: whatever
56 `)
57 th.WriteF("role.yaml", `
58 apiVersion: v1
59 kind: Role
60 metadata:
61 name: myRole
62 `)
63 th.WriteF("service.yaml", `
64 apiVersion: v1
65 kind: Service
66 metadata:
67 name: myService
68 `)
69
70 m := th.Run(".", th.MakeDefaultOptions())
71 th.AssertActualEqualsExpected(m, `
72 apiVersion: apps/v1
73 kind: Deployment
74 metadata:
75 name: zzz-myDeployment
76 spec:
77 template:
78 metadata:
79 labels:
80 backend: awesome
81 spec:
82 containers:
83 - image: whatever
84 name: whatever
85 ---
86 apiVersion: v1
87 kind: Role
88 metadata:
89 name: myRole
90 ---
91 apiVersion: v1
92 kind: Service
93 metadata:
94 name: zzz-myService
95 `)
96 }
97
View as plain text