diff --git a/pkg/admission/kubequota/kubequota_clusterworkspace_monitor.go b/pkg/admission/kubequota/kubequota_clusterworkspace_monitor.go index 0166c60e83a..bb7d74150d1 100644 --- a/pkg/admission/kubequota/kubequota_clusterworkspace_monitor.go +++ b/pkg/admission/kubequota/kubequota_clusterworkspace_monitor.go @@ -23,7 +23,7 @@ import ( kcpcache "github.com/kcp-dev/apimachinery/v2/pkg/cache" "github.com/kcp-dev/logicalcluster/v3" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -68,7 +68,7 @@ func NewLogicalClusterDeletionMonitor( func (m *LogicalClusterDeletionMonitor) enqueue(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -76,7 +76,7 @@ func (m *LogicalClusterDeletionMonitor) enqueue(obj interface{}) { } func (m *LogicalClusterDeletionMonitor) Start(stop <-chan struct{}) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer m.queue.ShutDown() logger := logging.WithReconciler(klog.Background(), m.name) @@ -107,7 +107,7 @@ func (m *LogicalClusterDeletionMonitor) processNextWorkItem() bool { if err := m.process(key); err != nil { //nolint:revive - runtime.HandleError(fmt.Errorf("LogicalClusterDeletionMonitor failed to sync %q, err: %w", key, err)) + utilruntime.HandleError(fmt.Errorf("LogicalClusterDeletionMonitor failed to sync %q, err: %w", key, err)) m.queue.AddRateLimited(key) @@ -123,7 +123,7 @@ func (m *LogicalClusterDeletionMonitor) processNextWorkItem() bool { func (m *LogicalClusterDeletionMonitor) process(key string) error { clusterName, _, _, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } diff --git a/pkg/features/kcp_features.go b/pkg/features/kcp_features.go index 844c97b0385..ff6abdae75c 100644 --- a/pkg/features/kcp_features.go +++ b/pkg/features/kcp_features.go @@ -23,7 +23,7 @@ import ( "github.com/spf13/pflag" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" genericfeatures "k8s.io/apiserver/pkg/features" utilfeature "k8s.io/apiserver/pkg/util/feature" "k8s.io/component-base/featuregate" @@ -47,7 +47,7 @@ const ( var DefaultFeatureGate = utilfeature.DefaultFeatureGate func init() { - runtime.Must(utilfeature.DefaultMutableFeatureGate.Add(defaultGenericControlPlaneFeatureGates)) + utilruntime.Must(utilfeature.DefaultMutableFeatureGate.Add(defaultGenericControlPlaneFeatureGates)) } func KnownFeatures() []string { diff --git a/pkg/proxy/index/index_controller.go b/pkg/proxy/index/index_controller.go index de102ace23c..c53386b7f22 100644 --- a/pkg/proxy/index/index_controller.go +++ b/pkg/proxy/index/index_controller.go @@ -25,7 +25,7 @@ import ( "github.com/kcp-dev/logicalcluster/v3" "k8s.io/apimachinery/pkg/api/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -133,7 +133,7 @@ type Controller struct { // Start the controller. It does not really do anything, but to keep the shape of a normal // controller, we keep it. func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer func() { c.lock.Lock() defer c.lock.Unlock() @@ -156,7 +156,7 @@ func (c *Controller) Start(ctx context.Context, numThreads int) { func (c *Controller) enqueueShard(ctx context.Context, obj interface{}) { key, err := cache.DeletionHandlingMetaNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -188,7 +188,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", controllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", controllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -201,7 +201,7 @@ func (c *Controller) process(ctx context.Context, key string) error { _, name, err := cache.SplitMetaNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } shard, err := c.shardLister.Get(name) diff --git a/pkg/proxy/proxy.go b/pkg/proxy/proxy.go index 7b842aeb65c..b8ddf39b7aa 100644 --- a/pkg/proxy/proxy.go +++ b/pkg/proxy/proxy.go @@ -26,7 +26,7 @@ import ( "net/url" "os" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" userinfo "k8s.io/apiserver/pkg/authentication/user" "k8s.io/apiserver/pkg/endpoints/request" ) @@ -88,7 +88,7 @@ func newShardReverseProxy() *httputil.ReverseProxy { shardURL := ShardURLFrom(req.Context()) if shardURL == nil { // should not happen if wiring is correct - runtime.HandleError(fmt.Errorf("no shard URL found in request context")) + utilruntime.HandleError(fmt.Errorf("no shard URL found in request context")) req.URL.Scheme = "https" req.URL.Host = "notfound" return diff --git a/pkg/reconciler/apis/apibindingdeletion/apibinding_deletion_controller.go b/pkg/reconciler/apis/apibindingdeletion/apibinding_deletion_controller.go index 6d8e5ec41ec..943166b2078 100644 --- a/pkg/reconciler/apis/apibindingdeletion/apibinding_deletion_controller.go +++ b/pkg/reconciler/apis/apibindingdeletion/apibinding_deletion_controller.go @@ -31,7 +31,7 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -132,7 +132,7 @@ type Controller struct { func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -141,7 +141,7 @@ func (c *Controller) enqueue(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -194,7 +194,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { } else { // rather than wait for a full resync, re-add the workspace to the queue to be processed c.queue.AddRateLimited(key) - runtime.HandleError(fmt.Errorf("deletion of apibinding %v failed: %w", key, err)) + utilruntime.HandleError(fmt.Errorf("deletion of apibinding %v failed: %w", key, err)) } return true @@ -205,7 +205,7 @@ func (c *Controller) process(ctx context.Context, key string) error { startTime := time.Now() cluster, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } clusterName := logicalcluster.Name(cluster.String()) // TODO: remove when SplitMetaClusterNamespaceKey is updated @@ -220,7 +220,7 @@ func (c *Controller) process(ctx context.Context, key string) error { return nil } if deleteErr != nil { - runtime.HandleError(fmt.Errorf("unable to retrieve apibinding %v from store: %w", key, deleteErr)) + utilruntime.HandleError(fmt.Errorf("unable to retrieve apibinding %v from store: %w", key, deleteErr)) return deleteErr } logger = logging.WithObject(logger, apibinding) diff --git a/pkg/reconciler/apis/apiexport/apiexport_controller.go b/pkg/reconciler/apis/apiexport/apiexport_controller.go index f14c0c02d2a..be94018d26b 100644 --- a/pkg/reconciler/apis/apiexport/apiexport_controller.go +++ b/pkg/reconciler/apis/apiexport/apiexport_controller.go @@ -31,7 +31,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -200,7 +200,7 @@ type controller struct { func (c *controller) enqueueAPIExport(apiExport *apisv1alpha1.APIExport) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(apiExport) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -212,7 +212,7 @@ func (c *controller) enqueueAPIExport(apiExport *apisv1alpha1.APIExport) { func (c *controller) enqueueAllAPIExports(shard *corev1alpha1.Shard) { list, err := c.listAPIExports() if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -220,7 +220,7 @@ func (c *controller) enqueueAllAPIExports(shard *corev1alpha1.Shard) { for i := range list { key, err := kcpcache.MetaClusterNamespaceKeyFunc(list[i]) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } @@ -232,7 +232,7 @@ func (c *controller) enqueueAllAPIExports(shard *corev1alpha1.Shard) { func (c *controller) enqueueSecret(secret *corev1.Secret) { apiExports, err := c.listAPIExportsForSecret(secret) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -240,7 +240,7 @@ func (c *controller) enqueueSecret(secret *corev1.Secret) { for _, apiExport := range apiExports { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(apiExport) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logging.WithQueueKey(logger, key).V(3).Info("queueing APIExport via identity Secret") @@ -250,7 +250,7 @@ func (c *controller) enqueueSecret(secret *corev1.Secret) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -287,7 +287,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -298,7 +298,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) error { cluster, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } diff --git a/pkg/reconciler/apis/apiexportendpointslice/apiexportendpointslice_controller.go b/pkg/reconciler/apis/apiexportendpointslice/apiexportendpointslice_controller.go index 326d4972287..344c26cbb79 100644 --- a/pkg/reconciler/apis/apiexportendpointslice/apiexportendpointslice_controller.go +++ b/pkg/reconciler/apis/apiexportendpointslice/apiexportendpointslice_controller.go @@ -28,7 +28,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" @@ -181,7 +181,7 @@ type controller struct { func (c *controller) enqueueAPIExportEndpointSlice(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -197,7 +197,7 @@ func (c *controller) enqueueAPIExportEndpointSlicesForAPIExport(obj interface{}) } export, ok := obj.(*apisv1alpha1.APIExport) if !ok { - runtime.HandleError(fmt.Errorf("obj is supposed to be a APIExport, but is %T", obj)) + utilruntime.HandleError(fmt.Errorf("obj is supposed to be a APIExport, but is %T", obj)) return } @@ -206,7 +206,7 @@ func (c *controller) enqueueAPIExportEndpointSlicesForAPIExport(obj interface{}) if path := logicalcluster.NewPath(export.Annotations[core.LogicalClusterPathAnnotationKey]); !path.Empty() { pathKeys, err := c.apiExportEndpointSliceClusterInformer.Informer().GetIndexer().IndexKeys(indexAPIExportEndpointSliceByAPIExport, path.Join(export.Name).String()) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } keys.Insert(pathKeys...) @@ -214,7 +214,7 @@ func (c *controller) enqueueAPIExportEndpointSlicesForAPIExport(obj interface{}) clusterKeys, err := c.apiExportEndpointSliceClusterInformer.Informer().GetIndexer().IndexKeys(indexAPIExportEndpointSliceByAPIExport, logicalcluster.From(export).Path().Join(export.Name).String()) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } keys.Insert(clusterKeys...) @@ -222,7 +222,7 @@ func (c *controller) enqueueAPIExportEndpointSlicesForAPIExport(obj interface{}) for _, key := range sets.List[string](keys) { slice, exists, err := c.apiExportEndpointSliceClusterInformer.Informer().GetIndexer().GetByKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } else if !exists { continue @@ -237,7 +237,7 @@ func (c *controller) enqueueAPIExportEndpointSlicesForAPIExport(obj interface{}) func (c *controller) enqueueAllAPIExportEndpointSlices(shard interface{}) { list, err := c.listAPIExportEndpointSlices() if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -245,7 +245,7 @@ func (c *controller) enqueueAllAPIExportEndpointSlices(shard interface{}) { for i := range list { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(list[i]) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } @@ -258,13 +258,13 @@ func (c *controller) enqueueAllAPIExportEndpointSlices(shard interface{}) { func (c *controller) enqueuePartition(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } slices, err := c.getAPIExportEndpointSlicesByPartition(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -277,7 +277,7 @@ func (c *controller) enqueuePartition(obj interface{}) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -314,7 +314,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -325,7 +325,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) error { clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } obj, err := c.getAPIExportEndpointSlice(clusterName, name) diff --git a/pkg/reconciler/apis/crdcleanup/crdcleanup_controller.go b/pkg/reconciler/apis/crdcleanup/crdcleanup_controller.go index 4effc8aed43..a21311665a0 100644 --- a/pkg/reconciler/apis/crdcleanup/crdcleanup_controller.go +++ b/pkg/reconciler/apis/crdcleanup/crdcleanup_controller.go @@ -29,7 +29,7 @@ import ( apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" @@ -118,7 +118,7 @@ type controller struct { func (c *controller) enqueueCRD(crd *apiextensionsv1.CustomResourceDefinition) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(crd) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -155,7 +155,7 @@ func (c *controller) enqueueFromAPIBinding(oldBinding, newBinding *apisv1alpha1. // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -192,7 +192,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/apis/extraannotationsync/apibindingannotation_controller.go b/pkg/reconciler/apis/extraannotationsync/apibindingannotation_controller.go index 36501471ffe..47eddb51520 100644 --- a/pkg/reconciler/apis/extraannotationsync/apibindingannotation_controller.go +++ b/pkg/reconciler/apis/extraannotationsync/apibindingannotation_controller.go @@ -31,7 +31,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/types" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" @@ -92,10 +92,10 @@ func NewController( for _, key := range sets.List[string](keys) { binding, exists, err := apiBindingInformer.Informer().GetIndexer().GetByKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } else if !exists { - runtime.HandleError(fmt.Errorf("APIBinding %q does not exist", key)) + utilruntime.HandleError(fmt.Errorf("APIBinding %q does not exist", key)) continue } ret = append(ret, binding.(*apisv1alpha1.APIBinding)) @@ -141,7 +141,7 @@ type controller struct { func (c *controller) enqueueAPIBinding(obj interface{}, logger logr.Logger, logSuffix string) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -157,13 +157,13 @@ func (c *controller) enqueueAPIExport(obj interface{}, logger logr.Logger) { export, ok := obj.(*apisv1alpha1.APIExport) if !ok { - runtime.HandleError(fmt.Errorf("obj is supposed to be a APIExport, but is %T", obj)) + utilruntime.HandleError(fmt.Errorf("obj is supposed to be a APIExport, but is %T", obj)) return } bindings, err := c.getAPIBindingsByAPIExport(export) if err != nil { - runtime.HandleError(fmt.Errorf("error getting APIBindings for APIExport %s|%s: %w", logicalcluster.From(export), export.Name, err)) + utilruntime.HandleError(fmt.Errorf("error getting APIBindings for APIExport %s|%s: %w", logicalcluster.From(export), export.Name, err)) return } @@ -175,7 +175,7 @@ func (c *controller) enqueueAPIExport(obj interface{}, logger logr.Logger) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -212,7 +212,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/apis/identitycache/api_export_identity_controller.go b/pkg/reconciler/apis/identitycache/api_export_identity_controller.go index 1cda9938914..f6aa1e06ba6 100644 --- a/pkg/reconciler/apis/identitycache/api_export_identity_controller.go +++ b/pkg/reconciler/apis/identitycache/api_export_identity_controller.go @@ -29,7 +29,7 @@ import ( corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -87,12 +87,12 @@ func NewApiExportIdentityProviderController( FilterFunc: func(obj interface{}) bool { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } cluster, _, _, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } clusterName := logicalcluster.Name(cluster.String()) // TODO: remove when SplitMetaClusterNamespaceKey returns tenancy.Name @@ -109,12 +109,12 @@ func NewApiExportIdentityProviderController( FilterFunc: func(obj interface{}) bool { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } cluster, _, _, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } clusterName := logicalcluster.Name(cluster.String()) // TODO: remove when SplitMetaClusterNamespaceKey returns tenancy.Name @@ -138,7 +138,7 @@ func NewApiExportIdentityProviderController( // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, _ int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -169,7 +169,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { return true } - runtime.HandleError(fmt.Errorf("%v failed with: %w", key, err)) + utilruntime.HandleError(fmt.Errorf("%v failed with: %w", key, err)) c.queue.AddRateLimited(key) return true diff --git a/pkg/reconciler/apis/permissionclaimlabel/permissionclaimlabel_controller.go b/pkg/reconciler/apis/permissionclaimlabel/permissionclaimlabel_controller.go index 3c15eb730f7..0ac9ed6a0ba 100644 --- a/pkg/reconciler/apis/permissionclaimlabel/permissionclaimlabel_controller.go +++ b/pkg/reconciler/apis/permissionclaimlabel/permissionclaimlabel_controller.go @@ -28,7 +28,7 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -120,7 +120,7 @@ type controller struct { func (c *controller) enqueueAPIBinding(obj interface{}, logger logr.Logger) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -130,7 +130,7 @@ func (c *controller) enqueueAPIBinding(obj interface{}, logger logr.Logger) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -167,7 +167,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/apis/replicatelogicalcluster/replicatelogicalcluster_controller.go b/pkg/reconciler/apis/replicatelogicalcluster/replicatelogicalcluster_controller.go index fb2ecc64076..412ba5c1564 100644 --- a/pkg/reconciler/apis/replicatelogicalcluster/replicatelogicalcluster_controller.go +++ b/pkg/reconciler/apis/replicatelogicalcluster/replicatelogicalcluster_controller.go @@ -23,7 +23,7 @@ import ( "github.com/kcp-dev/logicalcluster/v3" apierrors "k8s.io/apimachinery/pkg/api/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/tools/cache" "github.com/kcp-dev/kcp/pkg/reconciler/cache/labellogicalcluster" @@ -57,7 +57,7 @@ func NewController( // If there are any APIExports for this logical cluster, then the LogicalCluster object should be replicated. keys, err := apiExportIndexer.IndexKeys(kcpcache.ClusterIndexName, kcpcache.ClusterIndexKey(logicalcluster.From(cluster))) if err != nil { - runtime.HandleError(fmt.Errorf("failed to list APIExports: %v", err)) + utilruntime.HandleError(fmt.Errorf("failed to list APIExports: %v", err)) return false } return len(keys) > 0 @@ -74,13 +74,13 @@ func NewController( export, ok := obj.(*apisv1alpha1.APIExport) if !ok { - runtime.HandleError(fmt.Errorf("unexpected object type: %T", obj)) + utilruntime.HandleError(fmt.Errorf("unexpected object type: %T", obj)) return } cluster, err := logicalClusterLister.Cluster(logicalcluster.From(export)).Get(corev1alpha1.LogicalClusterName) if err != nil && !apierrors.IsNotFound(err) { - runtime.HandleError(fmt.Errorf("failed to get logical cluster: %v", err)) + utilruntime.HandleError(fmt.Errorf("failed to get logical cluster: %v", err)) return } else if apierrors.IsNotFound(err) { return diff --git a/pkg/reconciler/cache/labelclusterrolebindings/labelclusterrolebinding_controller.go b/pkg/reconciler/cache/labelclusterrolebindings/labelclusterrolebinding_controller.go index 161a92945a8..fa2975adb98 100644 --- a/pkg/reconciler/cache/labelclusterrolebindings/labelclusterrolebinding_controller.go +++ b/pkg/reconciler/cache/labelclusterrolebindings/labelclusterrolebinding_controller.go @@ -31,7 +31,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" rbacclientv1 "k8s.io/client-go/kubernetes/typed/rbac/v1" "k8s.io/client-go/tools/cache" @@ -147,7 +147,7 @@ type controller struct { func (c *controller) EnqueueClusterRoleBindings(clusterName logicalcluster.Name, values ...interface{}) { clusterRoleBindings, err := c.clusterRoleBindingLister.Cluster(clusterName).List(labels.Everything()) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -160,7 +160,7 @@ func (c *controller) EnqueueClusterRoleBindings(clusterName logicalcluster.Name, func (c *controller) enqueueClusterRoleBinding(obj interface{}, values ...interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -172,19 +172,19 @@ func (c *controller) enqueueClusterRoleBinding(obj interface{}, values ...interf func (c *controller) enqueueClusterRole(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } _, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } objs, err := c.clusterRoleBindingIndexer.ByIndex(labelclusterroles.ClusterRoleBindingByClusterRoleName, key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } for _, obj := range objs { @@ -195,7 +195,7 @@ func (c *controller) enqueueClusterRole(obj interface{}) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), c.controllerName) @@ -232,7 +232,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { @@ -247,7 +247,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) (bool, error) { cluster, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false, nil } diff --git a/pkg/reconciler/cache/labelclusterroles/labelclusterrole_controller.go b/pkg/reconciler/cache/labelclusterroles/labelclusterrole_controller.go index 88afdf38ab8..21bd6cddaf1 100644 --- a/pkg/reconciler/cache/labelclusterroles/labelclusterrole_controller.go +++ b/pkg/reconciler/cache/labelclusterroles/labelclusterrole_controller.go @@ -31,7 +31,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" rbacclientv1 "k8s.io/client-go/kubernetes/typed/rbac/v1" "k8s.io/client-go/tools/cache" @@ -158,7 +158,7 @@ func (c *controller) EnqueueClusterRoles(values ...interface{}) { func (c *controller) enqueueClusterRole(obj interface{}, values ...interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -174,7 +174,7 @@ func (c *controller) enqueueClusterRoleBinding(obj interface{}) { crb, ok := obj.(*rbacv1.ClusterRoleBinding) if !ok { - runtime.HandleError(fmt.Errorf("unexpected type %T", obj)) + utilruntime.HandleError(fmt.Errorf("unexpected type %T", obj)) return } @@ -184,7 +184,7 @@ func (c *controller) enqueueClusterRoleBinding(obj interface{}) { cr, err := c.clusterRoleLister.Cluster(logicalcluster.From(crb)).Get(crb.RoleRef.Name) if err != nil && !errors.IsNotFound(err) { - runtime.HandleError(err) + utilruntime.HandleError(err) return } else if errors.IsNotFound(err) { return // dangling ClusterRole reference, nothing to do @@ -195,7 +195,7 @@ func (c *controller) enqueueClusterRoleBinding(obj interface{}) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), c.controllerName) @@ -232,7 +232,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { @@ -247,7 +247,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) (bool, error) { parent, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false, nil } cr, err := c.clusterRoleLister.Cluster(parent).Get(name) diff --git a/pkg/reconciler/cache/labelclusterroles/labelclusterrole_reconcile.go b/pkg/reconciler/cache/labelclusterroles/labelclusterrole_reconcile.go index fd469f3bd87..fd28df105d7 100644 --- a/pkg/reconciler/cache/labelclusterroles/labelclusterrole_reconcile.go +++ b/pkg/reconciler/cache/labelclusterroles/labelclusterrole_reconcile.go @@ -23,7 +23,7 @@ import ( "github.com/kcp-dev/logicalcluster/v3" rbacv1 "k8s.io/api/rbac/v1" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/klog/v2" "github.com/kcp-dev/kcp/pkg/indexers" @@ -60,7 +60,7 @@ func (r *reconciler) reconcile(ctx context.Context, cr *rbacv1.ClusterRole) (boo if !replicate { objs, err := r.getReferencingClusterRoleBindings(clusterName, cr.Name) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false, nil // nothing we can do } for _, crb := range objs { diff --git a/pkg/reconciler/cache/labellogicalcluster/labellogicalcluster_controller.go b/pkg/reconciler/cache/labellogicalcluster/labellogicalcluster_controller.go index ef7f33acab6..5cffd63ebb4 100644 --- a/pkg/reconciler/cache/labellogicalcluster/labellogicalcluster_controller.go +++ b/pkg/reconciler/cache/labellogicalcluster/labellogicalcluster_controller.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -127,7 +127,7 @@ func (c *controller) EnqueueLogicalCluster(cluster *corev1alpha1.LogicalCluster, func (c *controller) enqueueLogicalCluster(obj interface{}, values ...interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -138,7 +138,7 @@ func (c *controller) enqueueLogicalCluster(obj interface{}, values ...interface{ // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), c.controllerName) @@ -175,7 +175,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { @@ -190,7 +190,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) (bool, error) { parent, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false, nil } obj, err := c.logicalClusterLister.Cluster(parent).Get(name) diff --git a/pkg/reconciler/cache/replication/replication_controller.go b/pkg/reconciler/cache/replication/replication_controller.go index 4e669eb68a8..c43e9801b67 100644 --- a/pkg/reconciler/cache/replication/replication_controller.go +++ b/pkg/reconciler/cache/replication/replication_controller.go @@ -30,7 +30,7 @@ import ( rbacv1 "k8s.io/api/rbac/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -100,7 +100,7 @@ func NewController( func (c *controller) enqueueObject(obj interface{}, gvr schema.GroupVersionResource) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } gvrKey := fmt.Sprintf("%s.%s.%s::%s", gvr.Version, gvr.Resource, gvr.Group, key) @@ -110,7 +110,7 @@ func (c *controller) enqueueObject(obj interface{}, gvr schema.GroupVersionResou func (c *controller) enqueueCacheObject(obj interface{}, gvr schema.GroupVersionResource) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } gvrKey := fmt.Sprintf("%s.%s.%s::%s", gvr.Version, gvr.Resource, gvr.Group, key) @@ -119,7 +119,7 @@ func (c *controller) enqueueCacheObject(obj interface{}, gvr schema.GroupVersion // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, workers int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -153,7 +153,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { return true } - runtime.HandleError(fmt.Errorf("%v failed with: %w", grKey, err)) + utilruntime.HandleError(fmt.Errorf("%v failed with: %w", grKey, err)) c.queue.AddRateLimited(grKey) return true @@ -162,13 +162,13 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func IsNoSystemClusterName(obj interface{}) bool { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } clusterName, _, _, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false } if strings.HasPrefix(clusterName.String(), "system:") { diff --git a/pkg/reconciler/cache/replication/replication_reconcile.go b/pkg/reconciler/cache/replication/replication_reconcile.go index 6044f290243..ea698704d5b 100644 --- a/pkg/reconciler/cache/replication/replication_reconcile.go +++ b/pkg/reconciler/cache/replication/replication_reconcile.go @@ -28,7 +28,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" genericrequest "k8s.io/apiserver/pkg/endpoints/request" "k8s.io/klog/v2" ) @@ -131,20 +131,20 @@ func (r *reconciler) reconcile(ctx context.Context, key string) error { clusterName, ns, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } localCopy, err := r.getLocalCopy(clusterName, ns, name) if err != nil && !apierrors.IsNotFound(err) { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } localExists := !apierrors.IsNotFound(err) globalCopy, err := r.getGlobalCopy(clusterName, ns, name) if err != nil && !apierrors.IsNotFound(err) { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } globalExists := !apierrors.IsNotFound(err) diff --git a/pkg/reconciler/core/logicalcluster/logicalcluster_controller.go b/pkg/reconciler/core/logicalcluster/logicalcluster_controller.go index f6cd8c55274..ef99f89f5b0 100644 --- a/pkg/reconciler/core/logicalcluster/logicalcluster_controller.go +++ b/pkg/reconciler/core/logicalcluster/logicalcluster_controller.go @@ -25,7 +25,7 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -92,7 +92,7 @@ type Controller struct { func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -101,7 +101,7 @@ func (c *Controller) enqueue(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -138,7 +138,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { diff --git a/pkg/reconciler/core/logicalclusterdeletion/logicalcluster_deletion_controller.go b/pkg/reconciler/core/logicalclusterdeletion/logicalcluster_deletion_controller.go index 7b3a3b92533..44abe821f08 100644 --- a/pkg/reconciler/core/logicalclusterdeletion/logicalcluster_deletion_controller.go +++ b/pkg/reconciler/core/logicalclusterdeletion/logicalcluster_deletion_controller.go @@ -34,7 +34,7 @@ import ( "k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/runtime/schema" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/rest" @@ -151,7 +151,7 @@ type Controller struct { func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.MetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -160,7 +160,7 @@ func (c *Controller) enqueue(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -173,7 +173,7 @@ func (c *Controller) Start(ctx context.Context, numThreads int) { frontProxyConfig = rest.AddUserAgent(frontProxyConfig, ControllerName) dynamicFrontProxyClient, err := kcpdynamic.NewForConfig(frontProxyConfig) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } c.dynamicFrontProxyClient = dynamicFrontProxyClient @@ -225,7 +225,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { } else { // rather than wait for a full resync, re-add the logical cluster to the queue to be processed c.queue.AddRateLimited(key) - runtime.HandleError(fmt.Errorf("deletion of logical cluster %v failed: %w", key, err)) + utilruntime.HandleError(fmt.Errorf("deletion of logical cluster %v failed: %w", key, err)) } return true @@ -235,7 +235,7 @@ func (c *Controller) process(ctx context.Context, key string) error { logger := klog.FromContext(ctx) clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } logicalCluster, deleteErr := c.logicalClusterLister.Cluster(clusterName).Get(name) @@ -244,7 +244,7 @@ func (c *Controller) process(ctx context.Context, key string) error { return nil } if deleteErr != nil { - runtime.HandleError(fmt.Errorf("unable to retrieve logical cluster %v from store: %w", key, deleteErr)) + utilruntime.HandleError(fmt.Errorf("unable to retrieve logical cluster %v from store: %w", key, deleteErr)) return deleteErr } diff --git a/pkg/reconciler/core/shard/shard_controller.go b/pkg/reconciler/core/shard/shard_controller.go index d57eda7f4d2..33ecf7a7ebe 100644 --- a/pkg/reconciler/core/shard/shard_controller.go +++ b/pkg/reconciler/core/shard/shard_controller.go @@ -26,7 +26,7 @@ import ( kerrors "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -91,7 +91,7 @@ type CommitFunc = func(ctx context.Context, original, updated *Resource) error func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.MetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -100,7 +100,7 @@ func (c *Controller) enqueue(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -137,7 +137,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/tenancy/bootstrap/bootstrap_controller.go b/pkg/reconciler/tenancy/bootstrap/bootstrap_controller.go index 7421c0dee2d..aa7c3ef3818 100644 --- a/pkg/reconciler/tenancy/bootstrap/bootstrap_controller.go +++ b/pkg/reconciler/tenancy/bootstrap/bootstrap_controller.go @@ -26,7 +26,7 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/discovery" @@ -113,7 +113,7 @@ type controller struct { func (c *controller) enqueue(obj interface{}) { key, err := kcpcache.MetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), c.controllerName), key) @@ -122,7 +122,7 @@ func (c *controller) enqueue(obj interface{}) { } func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), c.controllerName) @@ -160,7 +160,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { logger.V(4).Info("processing key") if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", c.controllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/tenancy/initialization/apibinder_initializer_controller.go b/pkg/reconciler/tenancy/initialization/apibinder_initializer_controller.go index 89bc580ccee..fd0b94d86dd 100644 --- a/pkg/reconciler/tenancy/initialization/apibinder_initializer_controller.go +++ b/pkg/reconciler/tenancy/initialization/apibinder_initializer_controller.go @@ -29,7 +29,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -171,7 +171,7 @@ type transitiveTypeResolver interface { func (b *APIBinder) enqueueLogicalCluster(obj interface{}, logger logr.Logger) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -182,7 +182,7 @@ func (b *APIBinder) enqueueLogicalCluster(obj interface{}, logger logr.Logger) { func (b *APIBinder) enqueueAPIBinding(obj interface{}, logger logr.Logger) { apiBinding, ok := obj.(*apisv1alpha1.APIBinding) if !ok { - runtime.HandleError(fmt.Errorf("expected APIBinding, got %T", obj)) + utilruntime.HandleError(fmt.Errorf("expected APIBinding, got %T", obj)) return } @@ -210,7 +210,7 @@ func (b *APIBinder) enqueueAPIBinding(obj interface{}, logger logr.Logger) { func (b *APIBinder) enqueueWorkspaceTypes(obj interface{}, logger logr.Logger) { wt, ok := obj.(*tenancyv1alpha1.WorkspaceType) if !ok { - runtime.HandleError(fmt.Errorf("obj is supposed to be a WorkspaceType, but is %T", obj)) + utilruntime.HandleError(fmt.Errorf("obj is supposed to be a WorkspaceType, but is %T", obj)) return } @@ -220,7 +220,7 @@ func (b *APIBinder) enqueueWorkspaceTypes(obj interface{}, logger logr.Logger) { list, err := b.listLogicalClusters() if err != nil { - runtime.HandleError(fmt.Errorf("error listing workspaces: %w", err)) + utilruntime.HandleError(fmt.Errorf("error listing workspaces: %w", err)) } for _, ws := range list { @@ -235,7 +235,7 @@ func (b *APIBinder) startWorker(ctx context.Context) { } func (b *APIBinder) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer b.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) ctx = klog.NewContext(ctx, logger) @@ -270,7 +270,7 @@ func (b *APIBinder) processNextWorkItem(ctx context.Context) bool { defer b.queue.Done(key) if err := b.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%s: failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%s: failed to sync %q, err: %w", ControllerName, key, err)) b.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/tenancy/logicalcluster/logicalcluster_controller.go b/pkg/reconciler/tenancy/logicalcluster/logicalcluster_controller.go index 5e64c9543b2..928be662f5c 100644 --- a/pkg/reconciler/tenancy/logicalcluster/logicalcluster_controller.go +++ b/pkg/reconciler/tenancy/logicalcluster/logicalcluster_controller.go @@ -32,7 +32,7 @@ import ( "k8s.io/apimachinery/pkg/api/equality" apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -109,7 +109,7 @@ type Controller struct { func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -120,7 +120,7 @@ func (c *Controller) enqueue(obj interface{}) { func (c *Controller) enqueueCRB(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -129,7 +129,7 @@ func (c *Controller) enqueueCRB(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -166,7 +166,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } diff --git a/pkg/reconciler/tenancy/replicatelogicalcluster/replicatelogicalcluster_controller.go b/pkg/reconciler/tenancy/replicatelogicalcluster/replicatelogicalcluster_controller.go index cca175d25ae..63124fd966c 100644 --- a/pkg/reconciler/tenancy/replicatelogicalcluster/replicatelogicalcluster_controller.go +++ b/pkg/reconciler/tenancy/replicatelogicalcluster/replicatelogicalcluster_controller.go @@ -23,7 +23,7 @@ import ( "github.com/kcp-dev/logicalcluster/v3" apierrors "k8s.io/apimachinery/pkg/api/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/tools/cache" "github.com/kcp-dev/kcp/pkg/reconciler/cache/labellogicalcluster" @@ -58,7 +58,7 @@ func NewController( // If there are any WorkspaceTypes for this logical cluster, then the LogicalCluster object should be replicated. keys, err := workspaceTypeIndexer.IndexKeys(kcpcache.ClusterIndexName, kcpcache.ClusterIndexKey(logicalcluster.From(cluster))) if err != nil { - runtime.HandleError(fmt.Errorf("failed to list WorkspaceTypes: %v", err)) + utilruntime.HandleError(fmt.Errorf("failed to list WorkspaceTypes: %v", err)) return false } return len(keys) > 0 @@ -75,13 +75,13 @@ func NewController( workspaceType, ok := obj.(*tenancyv1alpha1.WorkspaceType) if !ok { - runtime.HandleError(fmt.Errorf("unexpected object type: %T", obj)) + utilruntime.HandleError(fmt.Errorf("unexpected object type: %T", obj)) return } cluster, err := logicalClusterLister.Cluster(logicalcluster.From(workspaceType)).Get(corev1alpha1.LogicalClusterName) if err != nil && !apierrors.IsNotFound(err) { - runtime.HandleError(fmt.Errorf("failed to get logical cluster: %v", err)) + utilruntime.HandleError(fmt.Errorf("failed to get logical cluster: %v", err)) return } else if apierrors.IsNotFound(err) { return diff --git a/pkg/reconciler/tenancy/workspace/workspace_controller.go b/pkg/reconciler/tenancy/workspace/workspace_controller.go index 97a85330245..263b0274edb 100644 --- a/pkg/reconciler/tenancy/workspace/workspace_controller.go +++ b/pkg/reconciler/tenancy/workspace/workspace_controller.go @@ -26,7 +26,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/rest" "k8s.io/client-go/tools/cache" @@ -139,7 +139,7 @@ type Controller struct { func (c *Controller) enqueue(obj interface{}) { key, err := kcpcache.MetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -151,12 +151,12 @@ func (c *Controller) enqueueShard(obj interface{}) { logger := logging.WithReconciler(klog.Background(), ControllerName) key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -164,13 +164,13 @@ func (c *Controller) enqueueShard(obj interface{}) { if err == nil { workspaces, err := c.workspaceIndexer.ByIndex(unschedulable, "true") if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } for _, workspace := range workspaces { key, err := kcpcache.MetaClusterNamespaceKeyFunc(workspace) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logging.WithQueueKey(logger, key).V(3).Info("queueing unschedulable Workspace because of shard update", "shard", shard) @@ -180,14 +180,14 @@ func (c *Controller) enqueueShard(obj interface{}) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() // create external client that goes through the front-proxy externalConfig := rest.CopyConfig(c.externalLogicalClusterAdminConfig) kcpExternalClient, err := kcpclientset.NewForConfig(externalConfig) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } c.kcpExternalClient = kcpExternalClient @@ -226,7 +226,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { @@ -241,7 +241,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { func (c *Controller) process(ctx context.Context, key string) (bool, error) { parent, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return false, nil } workspace, err := c.workspaceLister.Cluster(parent).Get(name) diff --git a/pkg/reconciler/tenancy/workspacemounts/workspacemounts_controller.go b/pkg/reconciler/tenancy/workspacemounts/workspacemounts_controller.go index a1736f735e4..1346b5ca60c 100644 --- a/pkg/reconciler/tenancy/workspacemounts/workspacemounts_controller.go +++ b/pkg/reconciler/tenancy/workspacemounts/workspacemounts_controller.go @@ -31,7 +31,7 @@ import ( "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime/schema" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -119,7 +119,7 @@ type Controller struct { func (c *Controller) enqueueWorkspace(obj interface{}, suffix string) { key, err := kcpcache.MetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logger := logging.WithQueueKey(logging.WithReconciler(klog.Background(), ControllerName), key) @@ -128,7 +128,7 @@ func (c *Controller) enqueueWorkspace(obj interface{}, suffix string) { } func (c *Controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -165,7 +165,7 @@ func (c *Controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if requeue, err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } else if requeue { @@ -218,13 +218,13 @@ func (c *Controller) enqueuePotentiallyMountResource(gvr schema.GroupVersionReso u := obj.(*unstructured.Unstructured) key, err := indexWorkspaceByMountObjectValue(gvr, u) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } wss, err := indexers.ByIndex[*tenancyv1alpha1.Workspace](c.workspaceIndexer, workspaceMountsReferenceIndex, key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } for _, ws := range wss { diff --git a/pkg/reconciler/tenancy/workspacetype/workspacetype_controller.go b/pkg/reconciler/tenancy/workspacetype/workspacetype_controller.go index 9abefb78b50..b2067f7a699 100644 --- a/pkg/reconciler/tenancy/workspacetype/workspacetype_controller.go +++ b/pkg/reconciler/tenancy/workspacetype/workspacetype_controller.go @@ -26,7 +26,7 @@ import ( "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -131,7 +131,7 @@ type controller struct { func (c *controller) enqueueWorkspaceTypes(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -143,7 +143,7 @@ func (c *controller) enqueueWorkspaceTypes(obj interface{}) { func (c *controller) enqueueAllWorkspaceTypes(shard interface{}) { list, err := c.workspacetypeLister.List(labels.Everything()) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -151,7 +151,7 @@ func (c *controller) enqueueAllWorkspaceTypes(shard interface{}) { for i := range list { key, err := kcpcache.MetaClusterNamespaceKeyFunc(list[i]) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } @@ -163,7 +163,7 @@ func (c *controller) enqueueAllWorkspaceTypes(shard interface{}) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -200,7 +200,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { logger.V(4).Info("processing key") if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -211,7 +211,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) error { clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } obj, err := c.workspacetypeLister.Cluster(clusterName).Get(name) diff --git a/pkg/reconciler/topology/partitionset/partitionset_controller.go b/pkg/reconciler/topology/partitionset/partitionset_controller.go index a297dd7b2a9..56dbbd557cb 100644 --- a/pkg/reconciler/topology/partitionset/partitionset_controller.go +++ b/pkg/reconciler/topology/partitionset/partitionset_controller.go @@ -30,7 +30,7 @@ import ( "k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/runtime/schema" utilerrors "k8s.io/apimachinery/pkg/util/errors" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -180,7 +180,7 @@ type controller struct { func (c *controller) enqueuePartitionSet(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -193,7 +193,7 @@ func (c *controller) enqueuePartitionSet(obj interface{}) { func (c *controller) enqueueAllPartitionSets(shard interface{}) { list, err := c.listPartitionSets() if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -201,7 +201,7 @@ func (c *controller) enqueueAllPartitionSets(shard interface{}) { for i := range list { key, err := kcpcache.MetaClusterNamespaceKeyFunc(list[i]) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) continue } @@ -214,13 +214,13 @@ func (c *controller) enqueueAllPartitionSets(shard interface{}) { func (c *controller) enqueuePartition(obj interface{}) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(obj) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } partition, ok := obj.(*topologyv1alpha1.Partition) if !ok { - runtime.HandleError(fmt.Errorf("obj is supposed to be a Partition, but is %T", obj)) + utilruntime.HandleError(fmt.Errorf("obj is supposed to be a Partition, but is %T", obj)) return } logger := logging.WithObject(logging.WithReconciler(klog.Background(), ControllerName), obj.(*topologyv1alpha1.Partition)) @@ -235,7 +235,7 @@ func (c *controller) enqueuePartition(obj interface{}) { if errors.IsNotFound(err) { return // object deleted before we handled it } - runtime.HandleError(err) + utilruntime.HandleError(err) return } } @@ -250,7 +250,7 @@ func (c *controller) enqueuePartition(obj interface{}) { // Start starts the controller, which stops when ctx.Done() is closed. func (c *controller) Start(ctx context.Context, numThreads int) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -287,7 +287,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%q controller failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -298,7 +298,7 @@ func (c *controller) processNextWorkItem(ctx context.Context) bool { func (c *controller) process(ctx context.Context, key string) error { clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } obj, err := c.getPartitionSet(clusterName, name) diff --git a/pkg/virtual/apiexport/controllers/apireconciler/apiexport_apireconciler_controller.go b/pkg/virtual/apiexport/controllers/apireconciler/apiexport_apireconciler_controller.go index 515769c731a..d4f37863ceb 100644 --- a/pkg/virtual/apiexport/controllers/apireconciler/apiexport_apireconciler_controller.go +++ b/pkg/virtual/apiexport/controllers/apireconciler/apiexport_apireconciler_controller.go @@ -28,7 +28,7 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" - "k8s.io/apimachinery/pkg/util/runtime" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" @@ -143,18 +143,18 @@ type APIReconciler struct { func (c *APIReconciler) enqueueAPIResourceSchema(apiResourceSchema *apisv1alpha1.APIResourceSchema, logger logr.Logger) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(apiResourceSchema) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } clusterName, _, name, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } exports, err := c.listAPIExports(clusterName) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } @@ -174,7 +174,7 @@ func (c *APIReconciler) enqueueAPIResourceSchema(apiResourceSchema *apisv1alpha1 func (c *APIReconciler) enqueueAPIExport(apiExport *apisv1alpha1.APIExport, logger logr.Logger) { key, err := kcpcache.DeletionHandlingMetaClusterNamespaceKeyFunc(apiExport) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return } logging.WithQueueKey(logger, key).V(4).Info("queueing APIExport") @@ -206,7 +206,7 @@ func (c *APIReconciler) startWorker(ctx context.Context) { } func (c *APIReconciler) Start(ctx context.Context) { - defer runtime.HandleCrash() + defer utilruntime.HandleCrash() defer c.queue.ShutDown() logger := logging.WithReconciler(klog.FromContext(ctx), ControllerName) @@ -251,7 +251,7 @@ func (c *APIReconciler) processNextWorkItem(ctx context.Context) bool { defer c.queue.Done(key) if err := c.process(ctx, key); err != nil { - runtime.HandleError(fmt.Errorf("%s: failed to sync %q, err: %w", ControllerName, key, err)) + utilruntime.HandleError(fmt.Errorf("%s: failed to sync %q, err: %w", ControllerName, key, err)) c.queue.AddRateLimited(key) return true } @@ -263,7 +263,7 @@ func (c *APIReconciler) processNextWorkItem(ctx context.Context) bool { func (c *APIReconciler) process(ctx context.Context, key string) error { clusterName, _, apiExportName, err := kcpcache.SplitMetaClusterNamespaceKey(key) if err != nil { - runtime.HandleError(err) + utilruntime.HandleError(err) return nil } apiDomainKey := dynamiccontext.APIDomainKey(clusterName.String() + "/" + apiExportName)