Merge pull request #2352 from RainbowMango/pr_rename_informer_manager
rename and re-organize the informermanager
This commit is contained in:
commit
b1684b6466
|
@ -34,9 +34,9 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/sharedcli/klogflag"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/profileflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/gclient"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/objectwatcher"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
|
@ -194,7 +194,7 @@ func run(ctx context.Context, karmadaConfig karmadactl.KarmadaConfig, opts *opti
|
|||
func setupControllers(mgr controllerruntime.Manager, opts *options.Options, stopChan <-chan struct{}) error {
|
||||
restConfig := mgr.GetConfig()
|
||||
dynamicClientSet := dynamic.NewForConfigOrDie(restConfig)
|
||||
controlPlaneInformerManager := informermanager.NewSingleClusterInformerManager(dynamicClientSet, 0, stopChan)
|
||||
controlPlaneInformerManager := genericmanager.NewSingleClusterInformerManager(dynamicClientSet, 0, stopChan)
|
||||
resourceInterpreter := resourceinterpreter.NewResourceInterpreter("", controlPlaneInformerManager)
|
||||
if err := mgr.Add(resourceInterpreter); err != nil {
|
||||
return fmt.Errorf("failed to setup custom resource interpreter: %w", err)
|
||||
|
@ -229,7 +229,7 @@ func setupControllers(mgr controllerruntime.Manager, opts *options.Options, stop
|
|||
// Ensure the InformerManager stops when the stop channel closes
|
||||
go func() {
|
||||
<-stopChan
|
||||
informermanager.StopInstance()
|
||||
genericmanager.StopInstance()
|
||||
}()
|
||||
|
||||
return nil
|
||||
|
@ -241,7 +241,7 @@ func startClusterStatusController(ctx controllerscontext.Context) (bool, error)
|
|||
KubeClient: kubeclientset.NewForConfigOrDie(ctx.Mgr.GetConfig()),
|
||||
EventRecorder: ctx.Mgr.GetEventRecorderFor(status.ControllerName),
|
||||
PredicateFunc: helper.NewClusterPredicateOnAgent(ctx.Opts.ClusterName),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: ctx.StopChan,
|
||||
ClusterClientSetFunc: util.NewClusterClientSetForAgent,
|
||||
ClusterDynamicClientSetFunc: util.NewClusterDynamicClientSetForAgent,
|
||||
|
@ -267,7 +267,7 @@ func startExecutionController(ctx controllerscontext.Context) (bool, error) {
|
|||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
ObjectWatcher: ctx.ObjectWatcher,
|
||||
PredicateFunc: helper.NewExecutionPredicateOnAgent(),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
RatelimiterOptions: ctx.Opts.RateLimiterOptions,
|
||||
}
|
||||
if err := executionController.SetupWithManager(ctx.Mgr); err != nil {
|
||||
|
@ -281,7 +281,7 @@ func startWorkStatusController(ctx controllerscontext.Context) (bool, error) {
|
|||
Client: ctx.Mgr.GetClient(),
|
||||
EventRecorder: ctx.Mgr.GetEventRecorderFor(status.WorkStatusControllerName),
|
||||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: ctx.StopChan,
|
||||
ObjectWatcher: ctx.ObjectWatcher,
|
||||
PredicateFunc: helper.NewExecutionPredicateOnAgent(),
|
||||
|
@ -303,7 +303,7 @@ func startServiceExportController(ctx controllerscontext.Context) (bool, error)
|
|||
Client: ctx.Mgr.GetClient(),
|
||||
EventRecorder: ctx.Mgr.GetEventRecorderFor(mcs.ServiceExportControllerName),
|
||||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: ctx.StopChan,
|
||||
WorkerNumber: 3,
|
||||
PredicateFunc: helper.NewPredicateForServiceExportControllerOnAgent(ctx.Opts.ClusterName),
|
||||
|
|
|
@ -47,9 +47,9 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/sharedcli/klogflag"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/profileflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/gclient"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/objectwatcher"
|
||||
"github.com/karmada-io/karmada/pkg/util/overridemanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
|
@ -254,7 +254,7 @@ func startClusterStatusController(ctx controllerscontext.Context) (enabled bool,
|
|||
KubeClient: kubeclientset.NewForConfigOrDie(mgr.GetConfig()),
|
||||
EventRecorder: mgr.GetEventRecorderFor(status.ControllerName),
|
||||
PredicateFunc: clusterPredicateFunc,
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: stopChan,
|
||||
ClusterClientSetFunc: util.NewClusterClientSet,
|
||||
ClusterDynamicClientSetFunc: util.NewClusterDynamicClientSet,
|
||||
|
@ -325,7 +325,7 @@ func startExecutionController(ctx controllerscontext.Context) (enabled bool, err
|
|||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
ObjectWatcher: ctx.ObjectWatcher,
|
||||
PredicateFunc: helper.NewExecutionPredicate(ctx.Mgr),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
RatelimiterOptions: ctx.Opts.RateLimiterOptions,
|
||||
}
|
||||
if err := executionController.SetupWithManager(ctx.Mgr); err != nil {
|
||||
|
@ -340,7 +340,7 @@ func startWorkStatusController(ctx controllerscontext.Context) (enabled bool, er
|
|||
Client: ctx.Mgr.GetClient(),
|
||||
EventRecorder: ctx.Mgr.GetEventRecorderFor(status.WorkStatusControllerName),
|
||||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: ctx.StopChan,
|
||||
ObjectWatcher: ctx.ObjectWatcher,
|
||||
PredicateFunc: helper.NewExecutionPredicate(ctx.Mgr),
|
||||
|
@ -381,7 +381,7 @@ func startServiceExportController(ctx controllerscontext.Context) (enabled bool,
|
|||
Client: ctx.Mgr.GetClient(),
|
||||
EventRecorder: ctx.Mgr.GetEventRecorderFor(mcs.ServiceExportControllerName),
|
||||
RESTMapper: ctx.Mgr.GetRESTMapper(),
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
StopChan: ctx.StopChan,
|
||||
WorkerNumber: 3,
|
||||
PredicateFunc: helper.NewPredicateForServiceExportController(ctx.Mgr),
|
||||
|
@ -468,7 +468,7 @@ func setupControllers(mgr controllerruntime.Manager, opts *options.Options, stop
|
|||
skippedPropagatingNamespaces[ns] = struct{}{}
|
||||
}
|
||||
|
||||
controlPlaneInformerManager := informermanager.NewSingleClusterInformerManager(dynamicClientSet, 0, stopChan)
|
||||
controlPlaneInformerManager := genericmanager.NewSingleClusterInformerManager(dynamicClientSet, 0, stopChan)
|
||||
|
||||
resourceInterpreter := resourceinterpreter.NewResourceInterpreter("", controlPlaneInformerManager)
|
||||
if err := mgr.Add(resourceInterpreter); err != nil {
|
||||
|
@ -545,7 +545,7 @@ func setupControllers(mgr controllerruntime.Manager, opts *options.Options, stop
|
|||
// Ensure the InformerManager stops when the stop channel closes
|
||||
go func() {
|
||||
<-stopChan
|
||||
informermanager.StopInstance()
|
||||
genericmanager.StopInstance()
|
||||
}()
|
||||
}
|
||||
|
||||
|
@ -573,7 +573,7 @@ func setupClusterAPIClusterDetector(mgr controllerruntime.Manager, opts *options
|
|||
ControllerPlaneConfig: mgr.GetConfig(),
|
||||
ClusterAPIConfig: clusterAPIRestConfig,
|
||||
ClusterAPIClient: clusterAPIClient,
|
||||
InformerManager: informermanager.NewSingleClusterInformerManager(dynamic.NewForConfigOrDie(clusterAPIRestConfig), 0, stopChan),
|
||||
InformerManager: genericmanager.NewSingleClusterInformerManager(dynamic.NewForConfigOrDie(clusterAPIRestConfig), 0, stopChan),
|
||||
ConcurrentReconciles: 3,
|
||||
}
|
||||
if err := mgr.Add(clusterAPIClusterDetector); err != nil {
|
||||
|
|
|
@ -22,9 +22,10 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/karmadactl"
|
||||
"github.com/karmada-io/karmada/pkg/karmadactl/options"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
)
|
||||
|
||||
const (
|
||||
|
@ -44,7 +45,7 @@ type ClusterDetector struct {
|
|||
ControllerPlaneConfig *rest.Config
|
||||
ClusterAPIConfig *rest.Config
|
||||
ClusterAPIClient client.Client
|
||||
InformerManager informermanager.SingleClusterInformerManager
|
||||
InformerManager genericmanager.SingleClusterInformerManager
|
||||
EventHandler cache.ResourceEventHandler
|
||||
Processor util.AsyncWorker
|
||||
ConcurrentReconciles int
|
||||
|
@ -57,7 +58,7 @@ func (d *ClusterDetector) Start(ctx context.Context) error {
|
|||
klog.Infof("Starting cluster-api cluster detector.")
|
||||
d.stopCh = ctx.Done()
|
||||
|
||||
d.EventHandler = informermanager.NewHandlerOnEvents(d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
d.EventHandler = fedinformer.NewHandlerOnEvents(d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
workerOptions := util.Options{
|
||||
Name: "cluster-api cluster detector",
|
||||
KeyFunc: ClusterWideKeyFunc,
|
||||
|
|
|
@ -2,7 +2,7 @@ package clusterapi
|
|||
|
||||
import (
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
)
|
||||
|
||||
// ClusterWideKeyFunc generates a ClusterWideKey for object.
|
||||
|
|
|
@ -31,8 +31,8 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/overridemanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
@ -42,9 +42,9 @@ const ControllerName = "binding-controller"
|
|||
|
||||
// ResourceBindingController is to sync ResourceBinding.
|
||||
type ResourceBindingController struct {
|
||||
client.Client // used to operate ClusterResourceBinding resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager informermanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
client.Client // used to operate ClusterResourceBinding resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager genericmanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
EventRecorder record.EventRecorder
|
||||
RESTMapper meta.RESTMapper
|
||||
OverrideManager overridemanager.OverrideManager
|
||||
|
|
|
@ -27,8 +27,8 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/overridemanager"
|
||||
)
|
||||
|
||||
|
@ -37,9 +37,9 @@ const ClusterResourceBindingControllerName = "cluster-resource-binding-controlle
|
|||
|
||||
// ClusterResourceBindingController is to sync ClusterResourceBinding.
|
||||
type ClusterResourceBindingController struct {
|
||||
client.Client // used to operate ClusterResourceBinding resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager informermanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
client.Client // used to operate ClusterResourceBinding resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager genericmanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
EventRecorder record.EventRecorder
|
||||
RESTMapper meta.RESTMapper
|
||||
OverrideManager overridemanager.OverrideManager
|
||||
|
|
|
@ -20,8 +20,8 @@ import (
|
|||
workv1alpha2 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha2"
|
||||
"github.com/karmada-io/karmada/pkg/features"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
)
|
||||
|
||||
// TaintManagerName is the controller name that will be used for taint management.
|
||||
|
|
|
@ -9,7 +9,7 @@ import (
|
|||
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/objectwatcher"
|
||||
"github.com/karmada-io/karmada/pkg/util/overridemanager"
|
||||
)
|
||||
|
@ -71,7 +71,7 @@ type Context struct {
|
|||
StopChan <-chan struct{}
|
||||
DynamicClientSet dynamic.Interface
|
||||
OverrideManager overridemanager.OverrideManager
|
||||
ControlPlaneInformerManager informermanager.SingleClusterInformerManager
|
||||
ControlPlaneInformerManager genericmanager.SingleClusterInformerManager
|
||||
ResourceInterpreter resourceinterpreter.ResourceInterpreter
|
||||
}
|
||||
|
||||
|
|
|
@ -23,9 +23,9 @@ import (
|
|||
workv1alpha1 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/objectwatcher"
|
||||
)
|
||||
|
@ -42,7 +42,7 @@ type Controller struct {
|
|||
RESTMapper meta.RESTMapper
|
||||
ObjectWatcher objectwatcher.ObjectWatcher
|
||||
PredicateFunc predicate.Predicate
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
RatelimiterOptions ratelimiterflag.Options
|
||||
}
|
||||
|
||||
|
|
|
@ -19,8 +19,8 @@ import (
|
|||
workv1alpha1 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha1"
|
||||
workv1alpha2 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha2"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
@ -30,9 +30,9 @@ const ControllerName = "hpa-controller"
|
|||
|
||||
// HorizontalPodAutoscalerController is to sync HorizontalPodAutoscaler.
|
||||
type HorizontalPodAutoscalerController struct {
|
||||
client.Client // used to operate HorizontalPodAutoscaler resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager informermanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
client.Client // used to operate HorizontalPodAutoscaler resources.
|
||||
DynamicClient dynamic.Interface // used to fetch arbitrary resources from api server.
|
||||
InformerManager genericmanager.SingleClusterInformerManager // used to fetch arbitrary resources from cache.
|
||||
EventRecorder record.EventRecorder
|
||||
RESTMapper meta.RESTMapper
|
||||
}
|
||||
|
|
|
@ -28,9 +28,10 @@ import (
|
|||
clusterv1alpha1 "github.com/karmada-io/karmada/pkg/apis/cluster/v1alpha1"
|
||||
workv1alpha1 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
)
|
||||
|
||||
|
@ -43,7 +44,7 @@ type ServiceExportController struct {
|
|||
EventRecorder record.EventRecorder
|
||||
RESTMapper meta.RESTMapper
|
||||
StopChan <-chan struct{}
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
WorkerNumber int // WorkerNumber is the number of worker goroutines
|
||||
PredicateFunc predicate.Predicate // PredicateFunc is the function that filters events before enqueuing the keys.
|
||||
ClusterDynamicClientSetFunc func(clusterName string, client client.Client) (*util.DynamicClusterClient, error)
|
||||
|
@ -232,7 +233,7 @@ func (c *ServiceExportController) getEventHandler(clusterName string) cache.Reso
|
|||
return value.(cache.ResourceEventHandler)
|
||||
}
|
||||
|
||||
eventHandler := informermanager.NewHandlerOnEvents(c.genHandlerAddFunc(clusterName), c.genHandlerUpdateFunc(clusterName),
|
||||
eventHandler := fedinformer.NewHandlerOnEvents(c.genHandlerAddFunc(clusterName), c.genHandlerUpdateFunc(clusterName),
|
||||
c.genHandlerDeleteFunc(clusterName))
|
||||
c.eventHandlers.Store(clusterName, eventHandler)
|
||||
return eventHandler
|
||||
|
|
|
@ -33,8 +33,8 @@ import (
|
|||
clusterv1alpha1 "github.com/karmada-io/karmada/pkg/apis/cluster/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
)
|
||||
|
||||
const (
|
||||
|
@ -60,7 +60,7 @@ type ClusterStatusController struct {
|
|||
KubeClient clientset.Interface
|
||||
EventRecorder record.EventRecorder
|
||||
PredicateFunc predicate.Predicate
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
StopChan <-chan struct{}
|
||||
ClusterClientSetFunc func(string, client.Client, *util.ClientOption) (*util.ClusterClient, error)
|
||||
ClusterDynamicClientSetFunc func(clusterName string, client client.Client) (*util.DynamicClusterClient, error)
|
||||
|
@ -239,7 +239,7 @@ func (c *ClusterStatusController) updateStatusIfNeeded(cluster *clusterv1alpha1.
|
|||
|
||||
// buildInformerForCluster builds informer manager for cluster if it doesn't exist, then constructs informers for node
|
||||
// and pod and start it. If the informer manager exist, return it.
|
||||
func (c *ClusterStatusController) buildInformerForCluster(cluster *clusterv1alpha1.Cluster) (informermanager.SingleClusterInformerManager, error) {
|
||||
func (c *ClusterStatusController) buildInformerForCluster(cluster *clusterv1alpha1.Cluster) (genericmanager.SingleClusterInformerManager, error) {
|
||||
singleClusterInformerManager := c.InformerManager.GetSingleClusterManager(cluster.Name)
|
||||
if singleClusterInformerManager == nil {
|
||||
clusterClient, err := c.ClusterDynamicClientSetFunc(cluster.Name, c.Client)
|
||||
|
@ -404,7 +404,7 @@ func getAPIEnablements(clusterClient *util.ClusterClient) ([]clusterv1alpha1.API
|
|||
}
|
||||
|
||||
// listPods returns the Pod list from the informerManager cache.
|
||||
func listPods(informerManager informermanager.SingleClusterInformerManager) ([]*corev1.Pod, error) {
|
||||
func listPods(informerManager genericmanager.SingleClusterInformerManager) ([]*corev1.Pod, error) {
|
||||
podLister := informerManager.Lister(podGVR)
|
||||
|
||||
podList, err := podLister.List(labels.Everything())
|
||||
|
@ -420,7 +420,7 @@ func listPods(informerManager informermanager.SingleClusterInformerManager) ([]*
|
|||
}
|
||||
|
||||
// listNodes returns the Node list from the informerManager cache.
|
||||
func listNodes(informerManager informermanager.SingleClusterInformerManager) ([]*corev1.Node, error) {
|
||||
func listNodes(informerManager genericmanager.SingleClusterInformerManager) ([]*corev1.Node, error) {
|
||||
nodeLister := informerManager.Lister(nodeGVR)
|
||||
|
||||
nodeList, err := nodeLister.List(labels.Everything())
|
||||
|
|
|
@ -25,9 +25,10 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/objectwatcher"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
|
@ -41,7 +42,7 @@ type WorkStatusController struct {
|
|||
client.Client // used to operate Work resources.
|
||||
EventRecorder record.EventRecorder
|
||||
RESTMapper meta.RESTMapper
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
eventHandler cache.ResourceEventHandler // eventHandler knows how to handle events from the member cluster.
|
||||
StopChan <-chan struct{}
|
||||
worker util.AsyncWorker // worker process resources periodic from rateLimitingQueue.
|
||||
|
@ -113,7 +114,7 @@ func (c *WorkStatusController) buildResourceInformers(cluster *clusterv1alpha1.C
|
|||
// getEventHandler return callback function that knows how to handle events from the member cluster.
|
||||
func (c *WorkStatusController) getEventHandler() cache.ResourceEventHandler {
|
||||
if c.eventHandler == nil {
|
||||
c.eventHandler = informermanager.NewHandlerOnAllEvents(c.worker.Enqueue)
|
||||
c.eventHandler = fedinformer.NewHandlerOnAllEvents(c.worker.Enqueue)
|
||||
}
|
||||
return c.eventHandler
|
||||
}
|
||||
|
@ -442,7 +443,7 @@ func (c *WorkStatusController) getGVRsFromWork(work *workv1alpha1.Work) (map[sch
|
|||
|
||||
// getSingleClusterManager gets singleClusterInformerManager with clusterName.
|
||||
// If manager is not exist, create it, otherwise gets it from map.
|
||||
func (c *WorkStatusController) getSingleClusterManager(cluster *clusterv1alpha1.Cluster) (informermanager.SingleClusterInformerManager, error) {
|
||||
func (c *WorkStatusController) getSingleClusterManager(cluster *clusterv1alpha1.Cluster) (genericmanager.SingleClusterInformerManager, error) {
|
||||
// TODO(chenxianpao): If cluster A is removed, then a new cluster that name also is A joins karmada,
|
||||
// the cache in informer manager should be updated.
|
||||
singleClusterInformerManager := c.InformerManager.GetSingleClusterManager(cluster.Name)
|
||||
|
|
|
@ -30,9 +30,10 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/detector"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
)
|
||||
|
||||
|
@ -59,7 +60,7 @@ type DependenciesDistributor struct {
|
|||
// DynamicClient used to fetch arbitrary resources.
|
||||
DynamicClient dynamic.Interface
|
||||
|
||||
InformerManager informermanager.SingleClusterInformerManager
|
||||
InformerManager genericmanager.SingleClusterInformerManager
|
||||
EventHandler cache.ResourceEventHandler
|
||||
Processor util.AsyncWorker
|
||||
RESTMapper meta.RESTMapper
|
||||
|
@ -94,7 +95,7 @@ func (d *DependenciesDistributor) Start(ctx context.Context) error {
|
|||
Resource: "resourcebindings",
|
||||
}
|
||||
|
||||
bindingHandler := informermanager.NewHandlerOnEvents(nil, d.OnResourceBindingUpdate, d.OnResourceBindingDelete)
|
||||
bindingHandler := fedinformer.NewHandlerOnEvents(nil, d.OnResourceBindingUpdate, d.OnResourceBindingDelete)
|
||||
d.InformerManager.ForResource(resourceBindingGVR, bindingHandler)
|
||||
d.resourceBindingLister = d.InformerManager.Lister(resourceBindingGVR)
|
||||
resourceWorkerOptions := util.Options{
|
||||
|
@ -102,7 +103,7 @@ func (d *DependenciesDistributor) Start(ctx context.Context) error {
|
|||
KeyFunc: detector.ClusterWideKeyFunc,
|
||||
ReconcileFunc: d.Reconcile,
|
||||
}
|
||||
d.EventHandler = informermanager.NewHandlerOnEvents(d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
d.EventHandler = fedinformer.NewHandlerOnEvents(d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
d.Processor = util.NewAsyncWorker(resourceWorkerOptions)
|
||||
d.Processor.Run(2, d.stopCh)
|
||||
go d.discoverResources(30 * time.Second)
|
||||
|
|
|
@ -32,9 +32,10 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/sharedcli/ratelimiterflag"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/lifted"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
|
@ -48,7 +49,7 @@ type ResourceDetector struct {
|
|||
Client client.Client
|
||||
// DynamicClient used to fetch arbitrary resources.
|
||||
DynamicClient dynamic.Interface
|
||||
InformerManager informermanager.SingleClusterInformerManager
|
||||
InformerManager genericmanager.SingleClusterInformerManager
|
||||
EventHandler cache.ResourceEventHandler
|
||||
Processor util.AsyncWorker
|
||||
SkippedResourceConfig *util.SkippedResourceConfig
|
||||
|
@ -114,7 +115,7 @@ func (d *ResourceDetector) Start(ctx context.Context) error {
|
|||
Version: policyv1alpha1.GroupVersion.Version,
|
||||
Resource: "propagationpolicies",
|
||||
}
|
||||
policyHandler := informermanager.NewHandlerOnEvents(d.OnPropagationPolicyAdd, d.OnPropagationPolicyUpdate, d.OnPropagationPolicyDelete)
|
||||
policyHandler := fedinformer.NewHandlerOnEvents(d.OnPropagationPolicyAdd, d.OnPropagationPolicyUpdate, d.OnPropagationPolicyDelete)
|
||||
d.InformerManager.ForResource(propagationPolicyGVR, policyHandler)
|
||||
d.propagationPolicyLister = d.InformerManager.Lister(propagationPolicyGVR)
|
||||
|
||||
|
@ -124,7 +125,7 @@ func (d *ResourceDetector) Start(ctx context.Context) error {
|
|||
Version: policyv1alpha1.GroupVersion.Version,
|
||||
Resource: "clusterpropagationpolicies",
|
||||
}
|
||||
clusterPolicyHandler := informermanager.NewHandlerOnEvents(d.OnClusterPropagationPolicyAdd, d.OnClusterPropagationPolicyUpdate, d.OnClusterPropagationPolicyDelete)
|
||||
clusterPolicyHandler := fedinformer.NewHandlerOnEvents(d.OnClusterPropagationPolicyAdd, d.OnClusterPropagationPolicyUpdate, d.OnClusterPropagationPolicyDelete)
|
||||
d.InformerManager.ForResource(clusterPropagationPolicyGVR, clusterPolicyHandler)
|
||||
d.clusterPropagationPolicyLister = d.InformerManager.Lister(clusterPropagationPolicyGVR)
|
||||
|
||||
|
@ -135,7 +136,7 @@ func (d *ResourceDetector) Start(ctx context.Context) error {
|
|||
RateLimiterOptions: d.RateLimiterOptions,
|
||||
}
|
||||
|
||||
d.EventHandler = informermanager.NewFilteringHandlerOnAllEvents(d.EventFilter, d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
d.EventHandler = fedinformer.NewFilteringHandlerOnAllEvents(d.EventFilter, d.OnAdd, d.OnUpdate, d.OnDelete)
|
||||
d.Processor = util.NewAsyncWorker(detectorWorkerOptions)
|
||||
d.Processor.Run(d.ConcurrentResourceTemplateSyncs, d.stopCh)
|
||||
go d.discoverResources(30 * time.Second)
|
||||
|
|
|
@ -2,7 +2,7 @@ package detector
|
|||
|
||||
import (
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
)
|
||||
|
||||
// ClusterWideKeyFunc generates a ClusterWideKey for object.
|
||||
|
|
|
@ -32,9 +32,9 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/estimator/server/replica"
|
||||
estimatorservice "github.com/karmada-io/karmada/pkg/estimator/service"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/lifted"
|
||||
)
|
||||
|
||||
|
@ -62,7 +62,7 @@ type AccurateSchedulerEstimatorServer struct {
|
|||
nodeLister listv1.NodeLister
|
||||
replicaLister *replica.ListerWrapper
|
||||
getPodFunc func(nodeName string) ([]*corev1.Pod, error)
|
||||
informerManager informermanager.SingleClusterInformerManager
|
||||
informerManager genericmanager.SingleClusterInformerManager
|
||||
parallelizer lifted.Parallelizer
|
||||
}
|
||||
|
||||
|
@ -128,7 +128,7 @@ func NewEstimatorServer(
|
|||
}
|
||||
return pods, nil
|
||||
}
|
||||
es.informerManager = informermanager.NewSingleClusterInformerManager(dynamicClient, 0, stopChan)
|
||||
es.informerManager = genericmanager.NewSingleClusterInformerManager(dynamicClient, 0, stopChan)
|
||||
for _, gvr := range supportedGVRs {
|
||||
es.informerManager.Lister(gvr)
|
||||
}
|
||||
|
|
|
@ -13,12 +13,12 @@ import (
|
|||
|
||||
searchapis "github.com/karmada-io/karmada/pkg/apis/search"
|
||||
clusterlister "github.com/karmada-io/karmada/pkg/generated/listers/cluster/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
)
|
||||
|
||||
// SearchREST implements a RESTStorage for search resource.
|
||||
type SearchREST struct {
|
||||
multiClusterInformerManager informermanager.MultiClusterInformerManager
|
||||
multiClusterInformerManager genericmanager.MultiClusterInformerManager
|
||||
clusterLister clusterlister.ClusterLister
|
||||
|
||||
// add needed parameters here
|
||||
|
@ -30,7 +30,7 @@ var _ rest.Connecter = &SearchREST{}
|
|||
|
||||
// NewSearchREST returns a RESTStorage object that will work against search.
|
||||
func NewSearchREST(
|
||||
multiClusterInformerManager informermanager.MultiClusterInformerManager,
|
||||
multiClusterInformerManager genericmanager.MultiClusterInformerManager,
|
||||
clusterLister clusterlister.ClusterLister) *SearchREST {
|
||||
return &SearchREST{
|
||||
multiClusterInformerManager: multiClusterInformerManager,
|
||||
|
|
|
@ -12,8 +12,9 @@ import (
|
|||
"k8s.io/klog/v2"
|
||||
|
||||
configv1alpha1 "github.com/karmada-io/karmada/pkg/apis/config/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
)
|
||||
|
||||
var resourceExploringWebhookConfigurationsGVR = schema.GroupVersionResource{
|
||||
|
@ -59,7 +60,7 @@ func (m *interpreterConfigManager) HasSynced() bool {
|
|||
}
|
||||
|
||||
// NewExploreConfigManager return a new interpreterConfigManager with resourceinterpreterwebhookconfigurations handlers.
|
||||
func NewExploreConfigManager(inform informermanager.SingleClusterInformerManager) ConfigManager {
|
||||
func NewExploreConfigManager(inform genericmanager.SingleClusterInformerManager) ConfigManager {
|
||||
manager := &interpreterConfigManager{
|
||||
configuration: &atomic.Value{},
|
||||
lister: inform.Lister(resourceExploringWebhookConfigurationsGVR),
|
||||
|
@ -69,7 +70,7 @@ func NewExploreConfigManager(inform informermanager.SingleClusterInformerManager
|
|||
manager.configuration.Store([]WebhookAccessor{})
|
||||
manager.initialSynced.Store(false)
|
||||
|
||||
configHandlers := informermanager.NewHandlerOnEvents(
|
||||
configHandlers := fedinformer.NewHandlerOnEvents(
|
||||
func(_ interface{}) { manager.updateConfiguration() },
|
||||
func(_, _ interface{}) { manager.updateConfiguration() },
|
||||
func(_ interface{}) { manager.updateConfiguration() })
|
||||
|
|
|
@ -20,7 +20,7 @@ import (
|
|||
workv1alpha2 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha2"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter/customizedinterpreter/configmanager"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter/customizedinterpreter/webhook"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
interpreterutil "github.com/karmada-io/karmada/pkg/util/interpreter"
|
||||
)
|
||||
|
||||
|
@ -31,7 +31,7 @@ type CustomizedInterpreter struct {
|
|||
}
|
||||
|
||||
// NewCustomizedInterpreter return a new CustomizedInterpreter.
|
||||
func NewCustomizedInterpreter(kubeconfig string, informer informermanager.SingleClusterInformerManager) (*CustomizedInterpreter, error) {
|
||||
func NewCustomizedInterpreter(kubeconfig string, informer genericmanager.SingleClusterInformerManager) (*CustomizedInterpreter, error) {
|
||||
cm, err := webhookutil.NewClientManager(
|
||||
[]schema.GroupVersion{configv1alpha1.SchemeGroupVersion},
|
||||
configv1alpha1.AddToScheme,
|
||||
|
|
|
@ -13,7 +13,7 @@ import (
|
|||
"github.com/karmada-io/karmada/pkg/resourceinterpreter/customizedinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter/customizedinterpreter/webhook"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter/defaultinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
)
|
||||
|
||||
// ResourceInterpreter manages both default and customized webhooks to interpret custom resource structure.
|
||||
|
@ -46,7 +46,7 @@ type ResourceInterpreter interface {
|
|||
}
|
||||
|
||||
// NewResourceInterpreter builds a new ResourceInterpreter object.
|
||||
func NewResourceInterpreter(kubeconfig string, informer informermanager.SingleClusterInformerManager) ResourceInterpreter {
|
||||
func NewResourceInterpreter(kubeconfig string, informer genericmanager.SingleClusterInformerManager) ResourceInterpreter {
|
||||
return &customResourceInterpreterImpl{
|
||||
kubeconfig: kubeconfig,
|
||||
informer: informer,
|
||||
|
@ -55,7 +55,7 @@ func NewResourceInterpreter(kubeconfig string, informer informermanager.SingleCl
|
|||
|
||||
type customResourceInterpreterImpl struct {
|
||||
kubeconfig string
|
||||
informer informermanager.SingleClusterInformerManager
|
||||
informer genericmanager.SingleClusterInformerManager
|
||||
|
||||
customizedInterpreter *customizedinterpreter.CustomizedInterpreter
|
||||
defaultInterpreter *defaultinterpreter.DefaultInterpreter
|
||||
|
|
|
@ -10,12 +10,12 @@ import (
|
|||
searchscheme "github.com/karmada-io/karmada/pkg/apis/search/scheme"
|
||||
clusterlister "github.com/karmada-io/karmada/pkg/generated/listers/cluster/v1alpha1"
|
||||
searchstorage "github.com/karmada-io/karmada/pkg/registry/search/storage"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
)
|
||||
|
||||
// ExtraConfig holds custom apiserver config
|
||||
type ExtraConfig struct {
|
||||
MultiClusterInformerManager informermanager.MultiClusterInformerManager
|
||||
MultiClusterInformerManager genericmanager.MultiClusterInformerManager
|
||||
ClusterLister clusterlister.ClusterLister
|
||||
|
||||
// Add custom config if necessary.
|
||||
|
|
|
@ -26,8 +26,8 @@ import (
|
|||
clusterlister "github.com/karmada-io/karmada/pkg/generated/listers/cluster/v1alpha1"
|
||||
"github.com/karmada-io/karmada/pkg/search/backendstore"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/gclient"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
||||
|
@ -52,7 +52,7 @@ type Controller struct {
|
|||
|
||||
clusterRegistry sync.Map
|
||||
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
}
|
||||
|
||||
// NewController returns a new ResourceRegistry controller
|
||||
|
@ -75,7 +75,7 @@ func NewController(restConfig *rest.Config) (*Controller, error) {
|
|||
queue: queue,
|
||||
restMapper: restMapper,
|
||||
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
}
|
||||
c.addAllEventHandlers()
|
||||
|
||||
|
@ -118,7 +118,7 @@ func (c *Controller) Start(stopCh <-chan struct{}) {
|
|||
|
||||
go func() {
|
||||
<-stopCh
|
||||
informermanager.StopInstance()
|
||||
genericmanager.StopInstance()
|
||||
klog.Infof("Shutting down karmada search controller")
|
||||
}()
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package informermanager
|
||||
package genericmanager
|
||||
|
||||
import (
|
||||
"sync"
|
|
@ -1,4 +1,4 @@
|
|||
package informermanager
|
||||
package genericmanager
|
||||
|
||||
import (
|
||||
"context"
|
|
@ -1,4 +1,4 @@
|
|||
package informermanager
|
||||
package fedinformer
|
||||
|
||||
import (
|
||||
"reflect"
|
|
@ -21,7 +21,7 @@ import (
|
|||
workv1alpha1 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha1"
|
||||
workv1alpha2 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha2"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/names"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
@ -129,7 +129,7 @@ func RemoveOrphanWorks(c client.Client, works []workv1alpha1.Work) error {
|
|||
}
|
||||
|
||||
// FetchWorkload fetches the kubernetes resource to be propagated.
|
||||
func FetchWorkload(dynamicClient dynamic.Interface, informerManager informermanager.SingleClusterInformerManager,
|
||||
func FetchWorkload(dynamicClient dynamic.Interface, informerManager genericmanager.SingleClusterInformerManager,
|
||||
restMapper meta.RESTMapper, resource workv1alpha2.ObjectReference) (*unstructured.Unstructured, error) {
|
||||
dynamicResource, err := restmapper.GetGroupVersionResource(restMapper,
|
||||
schema.FromAPIVersionAndKind(resource.APIVersion, resource.Kind))
|
||||
|
|
|
@ -13,15 +13,15 @@ import (
|
|||
"k8s.io/client-go/dynamic"
|
||||
"k8s.io/klog/v2"
|
||||
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
||||
// GetObjectFromCache gets full object information from cache by key in worker queue.
|
||||
func GetObjectFromCache(
|
||||
restMapper meta.RESTMapper,
|
||||
manager informermanager.MultiClusterInformerManager,
|
||||
manager genericmanager.MultiClusterInformerManager,
|
||||
fedKey keys.FederatedKey,
|
||||
) (*unstructured.Unstructured, error) {
|
||||
gvr, err := restmapper.GetGroupVersionResource(restMapper, fedKey.GroupVersionKind())
|
||||
|
@ -60,7 +60,7 @@ func GetObjectFromCache(
|
|||
}
|
||||
|
||||
// GetObjectFromSingleClusterCache gets full object information from single cluster cache by key in worker queue.
|
||||
func GetObjectFromSingleClusterCache(restMapper meta.RESTMapper, manager informermanager.SingleClusterInformerManager,
|
||||
func GetObjectFromSingleClusterCache(restMapper meta.RESTMapper, manager genericmanager.SingleClusterInformerManager,
|
||||
cwk *keys.ClusterWideKey) (*unstructured.Unstructured, error) {
|
||||
gvr, err := restmapper.GetGroupVersionResource(restMapper, cwk.GroupVersionKind())
|
||||
if err != nil {
|
||||
|
|
|
@ -17,9 +17,9 @@ import (
|
|||
workv1alpha2 "github.com/karmada-io/karmada/pkg/apis/work/v1alpha2"
|
||||
"github.com/karmada-io/karmada/pkg/resourceinterpreter"
|
||||
"github.com/karmada-io/karmada/pkg/util"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/genericmanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/fedinformer/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/helper"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager"
|
||||
"github.com/karmada-io/karmada/pkg/util/informermanager/keys"
|
||||
"github.com/karmada-io/karmada/pkg/util/lifted"
|
||||
"github.com/karmada-io/karmada/pkg/util/restmapper"
|
||||
)
|
||||
|
@ -42,7 +42,7 @@ type objectWatcherImpl struct {
|
|||
VersionRecord map[string]map[string]string
|
||||
ClusterClientSetFunc ClientSetFunc
|
||||
resourceInterpreter resourceinterpreter.ResourceInterpreter
|
||||
InformerManager informermanager.MultiClusterInformerManager
|
||||
InformerManager genericmanager.MultiClusterInformerManager
|
||||
}
|
||||
|
||||
// NewObjectWatcher returns an instance of ObjectWatcher
|
||||
|
@ -53,7 +53,7 @@ func NewObjectWatcher(kubeClientSet client.Client, restMapper meta.RESTMapper, c
|
|||
RESTMapper: restMapper,
|
||||
ClusterClientSetFunc: clusterClientSetFunc,
|
||||
resourceInterpreter: interpreter,
|
||||
InformerManager: informermanager.GetInstance(),
|
||||
InformerManager: genericmanager.GetInstance(),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue