Skip to content

Commit c231b3b

Browse files
committed
Simplify kube client creation
1 parent 6f52690 commit c231b3b

File tree

1 file changed

+18
-39
lines changed

1 file changed

+18
-39
lines changed

internal/kube/client.go

+18-39
Original file line numberDiff line numberDiff line change
@@ -11,49 +11,28 @@ import (
1111
)
1212

1313
func SetupKubernetesClient() kubernetes.Interface {
14-
var kubeClient kubernetes.Interface
15-
_, err := rest.InClusterConfig()
16-
if err != nil {
17-
kubeClient = getClientOutOfCluster()
14+
var kubeConfig *rest.Config
15+
var err error
16+
17+
if os.Getenv("KUBERNETES_SERVICE_HOST") != "" {
18+
kubeConfig, err = rest.InClusterConfig()
19+
if err != nil {
20+
log.Fatal(err)
21+
}
1822
} else {
19-
kubeClient = getClientInCluster()
20-
}
21-
22-
return kubeClient
23-
}
24-
25-
func getClientInCluster() kubernetes.Interface {
26-
config, err := rest.InClusterConfig()
27-
if err != nil {
28-
log.Fatalf("Can not get kubernetes config: %v", err)
23+
kubeconfigPath := os.Getenv("KUBECONFIG")
24+
if kubeconfigPath == "" {
25+
kubeconfigPath = path.Join(os.Getenv("HOME"), ".kube", "config")
26+
}
27+
kubeConfig, err = clientcmd.BuildConfigFromFlags("", kubeconfigPath)
28+
if err != nil {
29+
log.Fatal(err)
30+
}
2931
}
3032

31-
clientset, err := kubernetes.NewForConfig(config)
32-
if err != nil {
33-
log.Fatalf("Can not create kubernetes client: %v", err)
34-
}
35-
36-
return clientset
37-
}
38-
39-
func buildOutOfClusterConfig() (*rest.Config, error) {
40-
kubeconfigPath := os.Getenv("KUBECONFIG")
41-
if kubeconfigPath == "" {
42-
kubeconfigPath = path.Join(os.Getenv("HOME"), ".kube", "config")
43-
}
44-
return clientcmd.BuildConfigFromFlags("", kubeconfigPath)
45-
}
46-
47-
func getClientOutOfCluster() kubernetes.Interface {
48-
config, err := buildOutOfClusterConfig()
49-
if err != nil {
50-
log.Fatalf("Cannot get kubernetes config: %v", err)
51-
}
52-
53-
clientset, err := kubernetes.NewForConfig(config)
54-
33+
clientset, err := kubernetes.NewForConfig(kubeConfig)
5534
if err != nil {
56-
log.Fatalf("Cannot create new kubernetes client from config: %v", err)
35+
log.Fatal(err)
5736
}
5837

5938
return clientset

0 commit comments

Comments
 (0)