...
1
2
3 package updatemanifests
4
5 import (
6 "fmt"
7 "os"
8
9 "sigs.k8s.io/kustomize/kyaml/kio"
10
11 "edge-infra.dev/pkg/edge/gitops/fns/edgerelease"
12 "edge-infra.dev/pkg/edge/gitops/fns/normalizer"
13 "edge-infra.dev/pkg/edge/yamlfmt"
14 "edge-infra.dev/pkg/lib/errors"
15 )
16
17
18
19
20 func Update(er edgerelease.EdgeRelease, path string) error {
21 n := normalizer.Normalizer{}
22
23 ignorer, err := yamlfmt.NewIgnorer(path)
24 if err != nil {
25 fmt.Println(err)
26 fmt.Printf("could not load ignorer with path %s\n", path)
27 os.Exit(1)
28 }
29
30 rw := kio.LocalPackageReadWriter{
31 PackagePath: path,
32 FileSkipFunc: ignorer.IgnorePath,
33 }
34 err = kio.Pipeline{
35 Inputs: []kio.Reader{&rw},
36 Outputs: []kio.Writer{&rw},
37 Filters: []kio.Filter{
38 kio.FilterFunc(er.Run),
39 kio.FilterFunc(n.Run),
40 },
41 }.Execute()
42
43 if err != nil {
44 return errors.New("failed to update manifests", err)
45 }
46 return nil
47 }
48
View as plain text