From f93655277b5e630c7dbfc2f01668dff45d8e45b6 Mon Sep 17 00:00:00 2001 From: Tarun Gupta Akirala Date: Mon, 7 Aug 2023 12:08:09 -0700 Subject: [PATCH 1/2] client-go: chore: implement `Is` interface for `ErrGroupDiscoveryFailed` Signed-off-by: Tarun Gupta Akirala Kubernetes-commit: 6aad00ff73d10378d33d615505239c5373a1108b --- discovery/discovery_client.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/discovery/discovery_client.go b/discovery/discovery_client.go index de10158c..50286f4e 100644 --- a/discovery/discovery_client.go +++ b/discovery/discovery_client.go @@ -420,6 +420,11 @@ func (e *ErrGroupDiscoveryFailed) Error() string { return fmt.Sprintf("unable to retrieve the complete list of server APIs: %s", strings.Join(groups, ", ")) } +func (e *ErrGroupDiscoveryFailed) Is(target error) bool { + _, ok := target.(*ErrGroupDiscoveryFailed) + return ok +} + // IsGroupDiscoveryFailedError returns true if the provided error indicates the server was unable to discover // a complete list of APIs for the client to use. func IsGroupDiscoveryFailedError(err error) bool { From 5a387501806f3b232da6ca5db307d5c60b563aa5 Mon Sep 17 00:00:00 2001 From: Tarun Gupta Akirala Date: Thu, 10 Aug 2023 10:50:01 -0700 Subject: [PATCH 2/2] fix: add code comments Kubernetes-commit: 1863a808b2082ddd8d116e6b31fd41de412e8a20 --- discovery/discovery_client.go | 1 + 1 file changed, 1 insertion(+) diff --git a/discovery/discovery_client.go b/discovery/discovery_client.go index 50286f4e..df0e0f99 100644 --- a/discovery/discovery_client.go +++ b/discovery/discovery_client.go @@ -420,6 +420,7 @@ func (e *ErrGroupDiscoveryFailed) Error() string { return fmt.Sprintf("unable to retrieve the complete list of server APIs: %s", strings.Join(groups, ", ")) } +// Is makes it possible for the callers to use `errors.Is(` helper on errors wrapped with ErrGroupDiscoveryFailed error. func (e *ErrGroupDiscoveryFailed) Is(target error) bool { _, ok := target.(*ErrGroupDiscoveryFailed) return ok