(nonCachedClient client.Client)
| 105 | } |
| 106 | |
| 107 | func LoadControllerConfig(nonCachedClient client.Client) (found bool, err error) { |
| 108 | configMapName, found := os.LookupEnv(ConfigMapNameEnvVar) |
| 109 | if found && len(configMapName) > 0 { |
| 110 | ConfigMapReference.Name = configMapName |
| 111 | } |
| 112 | configMapNamespace, found := os.LookupEnv(ConfigMapNamespaceEnvVar) |
| 113 | if found && len(configMapNamespace) > 0 { |
| 114 | ConfigMapReference.Namespace = configMapNamespace |
| 115 | } else { |
| 116 | namespace, err := infrastructure.GetNamespace() |
| 117 | if err != nil { |
| 118 | return false, err |
| 119 | } |
| 120 | ConfigMapReference.Namespace = namespace |
| 121 | } |
| 122 | |
| 123 | if ConfigMapReference.Namespace == "" { |
| 124 | return false, fmt.Errorf("you should set the namespace of the controller config map through the '%s' environment variable", ConfigMapNamespaceEnvVar) |
| 125 | } |
| 126 | |
| 127 | configMap := &corev1.ConfigMap{} |
| 128 | log.Info(fmt.Sprintf("Searching for config map '%s' in namespace '%s'", ConfigMapReference.Name, ConfigMapReference.Namespace)) |
| 129 | err = nonCachedClient.Get(context.TODO(), ConfigMapReference, configMap) |
| 130 | if err != nil { |
| 131 | if !k8sErrors.IsNotFound(err) { |
| 132 | return false, err |
| 133 | } |
| 134 | return false, nil |
| 135 | } else { |
| 136 | log.Info(fmt.Sprintf(" => found config map '%s' in namespace '%s'", configMap.GetObjectMeta().GetName(), configMap.GetObjectMeta().GetNamespace())) |
| 137 | } |
| 138 | |
| 139 | if configMap.Data == nil { |
| 140 | configMap.Data = map[string]string{} |
| 141 | } |
| 142 | syncConfigmapFromCluster(nonCachedClient, configMap) |
| 143 | |
| 144 | return true, nil |
| 145 | } |
no test coverage detected