MCPcopy Create free account
hub / github.com/devfile/devworkspace-operator / SetupControllerConfig

Function SetupControllerConfig

pkg/config/sync.go:109–159  ·  view source on GitHub ↗
(client crclient.Client)

Source from the content-addressed store, hash-verified

107}
108
109func SetupControllerConfig(client crclient.Client) error {
110 if internalConfig != nil {
111 return fmt.Errorf("internal controller configuration is already set up")
112 }
113 if err := setDefaultPodSecurityContext(); err != nil {
114 return err
115 }
116 if err := setDefaultContainerSecurityContext(); err != nil {
117 return err
118 }
119 if err := setDefaultOverrideConfig(); err != nil {
120 return err
121 }
122
123 internalConfig = &controller.OperatorConfiguration{}
124
125 namespace, err := infrastructure.GetNamespace()
126 if err != nil {
127 return err
128 }
129 configNamespace = namespace
130
131 config, err := getClusterConfig(configNamespace, client)
132 if err != nil {
133 return err
134 }
135 if config == nil {
136 internalConfig = defaultConfig.DeepCopy()
137 } else {
138 syncConfigFrom(config)
139 }
140
141 defaultRoutingSuffix, err := discoverRouteSuffix(client)
142 if err != nil {
143 return err
144 }
145 defaultConfig.Routing.ClusterHostSuffix = defaultRoutingSuffix
146 if internalConfig.Routing.ClusterHostSuffix == "" {
147 internalConfig.Routing.ClusterHostSuffix = defaultRoutingSuffix
148 }
149
150 clusterProxy, err := proxy.GetClusterProxyConfig(client)
151 if err != nil {
152 return err
153 }
154 defaultConfig.Routing.ProxyConfig = clusterProxy
155 internalConfig.Routing.ProxyConfig = proxy.MergeProxyConfigs(clusterProxy, internalConfig.Routing.ProxyConfig)
156
157 logCurrentConfig()
158 return nil
159}
160
161func IsSetUp() bool {
162 return internalConfig != nil

Calls 11

GetNamespaceFunction · 0.92
GetClusterProxyConfigFunction · 0.92
MergeProxyConfigsFunction · 0.92
setDefaultOverrideConfigFunction · 0.85
getClusterConfigFunction · 0.85
syncConfigFromFunction · 0.85
discoverRouteSuffixFunction · 0.85
logCurrentConfigFunction · 0.85
DeepCopyMethod · 0.45