...
1
2
3
4 package fsslice
5
6 import (
7 "sigs.k8s.io/kustomize/api/filters/fieldspec"
8 "sigs.k8s.io/kustomize/api/filters/filtersutil"
9 "sigs.k8s.io/kustomize/api/types"
10 "sigs.k8s.io/kustomize/kyaml/yaml"
11 )
12
13 var _ yaml.Filter = Filter{}
14
15
16
17 type Filter struct {
18
19 FsSlice types.FsSlice `yaml:"fsSlice"`
20
21
22 SetValue filtersutil.SetFn
23
24
25 CreateKind yaml.Kind
26
27
28 CreateTag string
29 }
30
31 func (fltr Filter) Filter(obj *yaml.RNode) (*yaml.RNode, error) {
32 for i := range fltr.FsSlice {
33
34
35
36 _, err := (&fieldspec.Filter{
37 FieldSpec: fltr.FsSlice[i],
38 SetValue: fltr.SetValue,
39 CreateKind: fltr.CreateKind,
40 CreateTag: fltr.CreateTag,
41 }).Filter(obj)
42 if err != nil {
43 return nil, err
44 }
45 }
46 return obj, nil
47 }
48
View as plain text