...
1 package helm
2
3 import (
4 "embed"
5 "fmt"
6
7 "sigs.k8s.io/yaml"
8
9 l5dvalues "edge-infra.dev/pkg/edge/linkerd/helm/values"
10 )
11
12
13
14
15
16 var Templates embed.FS
17
18
19 var Version string
20
21 const (
22 ControlPath = "linkerd/charts/linkerd-control-plane"
23 CrdPath = "linkerd/charts/linkerd-crds"
24 Policies = "templates/policy"
25 PartialsChartPath = "linkerd/charts/partials"
26
27 Registry = "ghcr.io/linkerd"
28
29
30 PolicyControllerImage = "policy-controller"
31 ProxyImage = "proxy"
32 ProxyInitImage = "proxy-init"
33 ControllerImage = "controller"
34 DebugImage = "debug"
35 )
36
37
38
39
40
41
42
43
44
45
46 func DefaultValues() (*l5dvalues.Values, error) {
47
48
49
50
51
52 v, err := readDefaults(CrdPath + "/values.yaml")
53 if err != nil {
54 return nil, err
55 }
56
57 vCP, err := readDefaults(ControlPath + "/values.yaml")
58 if err != nil {
59 return nil, err
60 }
61
62 *v, err = v.Merge(*vCP)
63 if err != nil {
64 return nil, err
65 }
66
67
68 v.CliVersion = Version
69 v.LinkerdVersion = Version
70 v.PolicyController.Image.Version = Version
71 v.Proxy.Image.Version = Version
72
73 v.DisableHeartBeat = true
74
75 return v, nil
76 }
77
78 func readDefaults(p string) (*l5dvalues.Values, error) {
79
80 raw, err := Templates.ReadFile(p)
81 if err != nil {
82 return nil, fmt.Errorf("failed to read %s: %w", p, err)
83 }
84
85
86 v := &l5dvalues.Values{}
87 err = yaml.Unmarshal(raw, &v)
88 if err != nil {
89 return nil, fmt.Errorf("failed to unmarshal values data into values struct: %w", err)
90 }
91 return v, nil
92 }
93
View as plain text