in pkg/client/kubeclient.go [79:101]
func CreateRestConfig(kc string) (*rest.Config, error) {
// attempt to use in-cluster config
config, err := rest.InClusterConfig()
if err != nil && err != rest.ErrNotInCluster {
log.Log(log.ShimClient).Error("failed to create REST config", zap.Error(err))
return nil, err
}
if config != nil {
return config, nil
}
// fall back to kubeconfig if present
if kc == "" {
kc = conf.GetDefaultKubeConfigPath()
}
log.Log(log.ShimClient).Info(fmt.Sprintf("Not running inside Kubernetes; using KUBECONFIG at %s", kc))
config, err = clientcmd.BuildConfigFromFlags("", kc)
if err != nil {
log.Log(log.ShimClient).Error("failed to create kubeClient configs", zap.Error(err))
return config, err
}
return config, nil
}