@@ -10,19 +10,14 @@ import (
10
10
11
11
checkpoint "github.com/weaveworks/go-checkpoint"
12
12
weave "github.com/weaveworks/weave/router"
13
- api "k8s.io/apimachinery/pkg/apis/meta/v1"
14
- "k8s.io/client-go/kubernetes"
15
- "k8s.io/client-go/rest"
16
13
)
17
14
18
15
var checker * checkpoint.Checker
19
16
var newVersion atomic.Value
20
17
var success atomic.Value
21
18
22
19
const (
23
- updateCheckPeriod = 6 * time .Hour
24
- configMapName = "weave-net"
25
- configMapNamespace = "kube-system"
20
+ updateCheckPeriod = 6 * time .Hour
26
21
)
27
22
28
23
func checkForUpdates (dockerVersion string , router * weave.NetworkRouter , clusterSize uint ) {
@@ -88,36 +83,13 @@ func checkpointFlags(router *weave.NetworkRouter) []checkpoint.Flag {
88
83
return flags
89
84
}
90
85
91
- // checkpoint Kubernetes specific details
86
+ // checkpoint Kubernetes specific details, passed in from launch script
92
87
func checkpointKubernetes (ctx context.Context , flags map [string ]string , clusterSize uint ) {
93
- // checks if weaver is running in Kubernetes
94
- host := os .Getenv ("KUBERNETES_SERVICE_HOST" )
95
- if len (host ) == 0 {
96
- return
88
+ version := os .Getenv ("WEAVE_KUBERNETES_VERSION" )
89
+ if len (version ) == 0 {
90
+ return // not running under Kubernetes
97
91
}
98
- config , err := rest .InClusterConfig ()
99
- if err != nil {
100
- Log .Printf ("Could not get Kubernetes in-cluster config: %v" , err )
101
- return
102
- }
103
- c , err := kubernetes .NewForConfig (config )
104
- if err != nil {
105
- Log .Printf ("Could not make Kubernetes client: %v" , err )
106
- return
107
- }
108
- k8sVersion , err := c .Discovery ().ServerVersion ()
109
- if err != nil {
110
- Log .Printf ("Could not get Kubernetes version: %v" , err )
111
- return
112
- }
113
- flags ["kubernetes-version" ] = k8sVersion .String ()
114
-
115
- // use UID of `weave-net` configmap as unique ID of the Kubenerets cluster
116
- cm , err := c .CoreV1 ().ConfigMaps (configMapNamespace ).Get (ctx , configMapName , api.GetOptions {})
117
- if err != nil {
118
- Log .Printf ("Unable to fetch ConfigMap %s/%s to infer unique cluster ID" , configMapNamespace , configMapName )
119
- return
120
- }
121
- flags ["kubernetes-cluster-uid" ] = string (cm .ObjectMeta .UID )
92
+ flags ["kubernetes-version" ] = version
93
+ flags ["kubernetes-cluster-uid" ] = string (os .Getenv ("WEAVE_KUBERNETES_UID" ))
122
94
flags ["kubernetes-cluster-size" ] = fmt .Sprint (clusterSize )
123
95
}
0 commit comments