@@ -11,49 +11,28 @@ import (
11
11
)
12
12
13
13
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
+ }
18
22
} 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
+ }
29
31
}
30
32
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 )
55
34
if err != nil {
56
- log .Fatalf ( "Cannot create new kubernetes client from config: %v" , err )
35
+ log .Fatal ( err )
57
36
}
58
37
59
38
return clientset
0 commit comments