MCPcopy Index your code
hub / github.com/coldbrewcloud/coldbrew-cli / Defaults

Method Defaults

config/load.go:48–100  ·  view source on GitHub ↗
(source *Config)

Source from the content-addressed store, hash-verified

46}
47
48func (c *Config) Defaults(source *Config) {
49 if source == nil {
50 return
51 }
52
53 defS(&c.Name, source.Name)
54 defS(&c.ClusterName, source.ClusterName)
55 defU16(&c.Port, source.Port)
56 defF64(&c.CPU, source.CPU)
57 defS(&c.Memory, source.Memory)
58 defU16(&c.Units, source.Units)
59
60 // envs
61 if c.Env == nil {
62 c.Env = make(map[string]string)
63 }
64 for ek, ev := range source.Env {
65 c.Env[ek] = ev
66 }
67
68 // load balancer
69 defB(&c.LoadBalancer.Enabled, source.LoadBalancer.Enabled)
70 defU16(&c.LoadBalancer.Port, source.LoadBalancer.Port)
71 defU16(&c.LoadBalancer.HTTPSPort, source.LoadBalancer.HTTPSPort)
72 defS(&c.LoadBalancer.HealthCheck.Interval, source.LoadBalancer.HealthCheck.Interval)
73 defS(&c.LoadBalancer.HealthCheck.Path, source.LoadBalancer.HealthCheck.Path)
74 defS(&c.LoadBalancer.HealthCheck.Status, source.LoadBalancer.HealthCheck.Status)
75 defS(&c.LoadBalancer.HealthCheck.Timeout, source.LoadBalancer.HealthCheck.Timeout)
76 defU16(&c.LoadBalancer.HealthCheck.HealthyLimit, source.LoadBalancer.HealthCheck.HealthyLimit)
77 defU16(&c.LoadBalancer.HealthCheck.UnhealthyLimit, source.LoadBalancer.HealthCheck.UnhealthyLimit)
78
79 // logging
80 if conv.S(c.Logging.Driver) == "" {
81 // logging option is copied only when logging driver was copied
82 defS(&c.Logging.Driver, source.Logging.Driver)
83 if source.Logging.Options != nil {
84 c.Logging.Options = make(map[string]string)
85 for k, v := range source.Logging.Options {
86 c.Logging.Options[k] = v
87 }
88 }
89 }
90
91 // AWS
92 defS(&c.AWS.ELBLoadBalancerName, source.AWS.ELBLoadBalancerName)
93 defS(&c.AWS.ELBTargetGroupName, source.AWS.ELBTargetGroupName)
94 defS(&c.AWS.ELBSecurityGroupName, source.AWS.ELBSecurityGroupName)
95 defS(&c.AWS.ELBCertificateARN, source.AWS.ELBCertificateARN)
96 defS(&c.AWS.ECRRepositoryName, source.AWS.ECRRepositoryName)
97
98 // docker
99 defS(&c.Docker.Bin, source.Docker.Bin)
100}
101
102func defS(src **string, dest *string) {
103 if *src == nil && dest != nil {

Callers 2

TestConfig_DefaultsFunction · 0.95
LoadFunction · 0.95

Calls 4

defSFunction · 0.85
defU16Function · 0.85
defF64Function · 0.85
defBFunction · 0.85

Tested by 1

TestConfig_DefaultsFunction · 0.76