...
1
2
3
4 package fsslice_test
5
6 import (
7 "bytes"
8 "log"
9 "os"
10
11 "sigs.k8s.io/kustomize/api/filters/filtersutil"
12 "sigs.k8s.io/kustomize/api/filters/fsslice"
13 "sigs.k8s.io/kustomize/api/types"
14 "sigs.k8s.io/kustomize/kyaml/kio"
15 "sigs.k8s.io/kustomize/kyaml/yaml"
16 )
17
18 func ExampleFilter() {
19 in := &kio.ByteReader{
20 Reader: bytes.NewBufferString(`
21 apiVersion: example.com/v1
22 kind: Foo
23 metadata:
24 name: instance
25 ---
26 apiVersion: example.com/v1
27 kind: Bar
28 metadata:
29 name: instance
30 `),
31 }
32 fltr := fsslice.Filter{
33 CreateKind: yaml.ScalarNode,
34 SetValue: filtersutil.SetScalar("green"),
35 FsSlice: []types.FieldSpec{
36 {Path: "a/b", CreateIfNotPresent: true},
37 },
38 }
39
40 err := kio.Pipeline{
41 Inputs: []kio.Reader{in},
42 Filters: []kio.Filter{kio.FilterAll(fltr)},
43 Outputs: []kio.Writer{kio.ByteWriter{Writer: os.Stdout}},
44 }.Execute()
45 if err != nil {
46 log.Fatal(err)
47 }
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 }
64
View as plain text