...
1
2
3
4 package fieldspec_test
5
6 import (
7 "bytes"
8 "log"
9 "os"
10
11 . "sigs.k8s.io/kustomize/api/filters/fieldspec"
12 "sigs.k8s.io/kustomize/api/filters/filtersutil"
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 := Filter{
33 CreateKind: yaml.ScalarNode,
34 SetValue: filtersutil.SetScalar("green"),
35 FieldSpec: types.FieldSpec{Path: "a/b", CreateIfNotPresent: true},
36 }
37
38 err := kio.Pipeline{
39 Inputs: []kio.Reader{in},
40 Filters: []kio.Filter{kio.FilterAll(fltr)},
41 Outputs: []kio.Writer{kio.ByteWriter{Writer: os.Stdout}},
42 }.Execute()
43 if err != nil {
44 log.Fatal(err)
45 }
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 }
62
View as plain text