aboutsummaryrefslogtreecommitdiff
path: root/plugin/kubernetes/kubernetes.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/kubernetes/kubernetes.go')
-rw-r--r--plugin/kubernetes/kubernetes.go17
1 files changed, 8 insertions, 9 deletions
diff --git a/plugin/kubernetes/kubernetes.go b/plugin/kubernetes/kubernetes.go
index ce9ca6077..7b3d822c2 100644
--- a/plugin/kubernetes/kubernetes.go
+++ b/plugin/kubernetes/kubernetes.go
@@ -252,15 +252,14 @@ func (k *Kubernetes) InitKubeCache(ctx context.Context) (err error) {
}
// Disable use of endpoint slices for k8s versions 1.18 and earlier. Endpoint slices were
// introduced in 1.17 but EndpointSliceMirroring was not added until 1.19.
- sv, err := kubeClient.ServerVersion()
- if err != nil {
- return err
- }
- major, _ := strconv.Atoi(sv.Major)
- minor, _ := strconv.Atoi(strings.TrimRight(sv.Minor, "+"))
- if k.opts.useEndpointSlices && major <= 1 && minor <= 18 {
- log.Info("watching Endpoints instead of EndpointSlices in k8s versions < 1.19")
- k.opts.useEndpointSlices = false
+ // if err != nil, we continue with the above default which is to use endpoint slices.
+ if sv, err := kubeClient.ServerVersion(); err == nil {
+ major, _ := strconv.Atoi(sv.Major)
+ minor, _ := strconv.Atoi(strings.TrimRight(sv.Minor, "+"))
+ if k.opts.useEndpointSlices && major <= 1 && minor <= 18 {
+ log.Info("Watching Endpoints instead of EndpointSlices in k8s versions < 1.19")
+ k.opts.useEndpointSlices = false
+ }
}
k.APIConn = newdnsController(ctx, kubeClient, k.opts)