From 049d606bfcf43a7df0ed65c29136c6a3cfce9a26 Mon Sep 17 00:00:00 2001 From: Pavel Popov Date: Sat, 26 Jul 2025 16:17:38 +0800 Subject: [PATCH] fix: replace deprecated Endpoints API with EndpointSlice - Replace deprecated v1.Endpoints with discovery.k8s.io/v1.EndpointSlice - Update getKubernetesEndpointPort function to use EndpointSlices - Resolves deprecation warning: 'v1 Endpoints is deprecated in v1.33+' --- .gitignore | 1 + kubefetch.go | 10 ++++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 8e8825e..0478c94 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +.direnv .vscode /vendor kubefetch diff --git a/kubefetch.go b/kubefetch.go index 8e4b077..ddac93e 100755 --- a/kubefetch.go +++ b/kubefetch.go @@ -208,17 +208,19 @@ func getStorage(clientset *kubernetes.Clientset) string { func getKubernetesEndpointPort(clientset *kubernetes.Clientset) int { - endpoint, err := clientset.CoreV1().Endpoints("default").Get(context.TODO(), "kubernetes", v1.GetOptions{}) + endpointSlices, err := clientset.DiscoveryV1().EndpointSlices("default").List(context.TODO(), v1.ListOptions{ + LabelSelector: "kubernetes.io/service-name=kubernetes", + }) if err != nil { panic(err.Error()) } var portNumber int // Accessing the ports exposed by the Endpoint - for _, subset := range endpoint.Subsets { - for _, port := range subset.Ports { + for _, endpointSlice := range endpointSlices.Items { + for _, port := range endpointSlice.Ports { // Accessing port.Port - portNumber = int(port.Port) + portNumber = int(*port.Port) } }