Merge pull request #2748 from yanggangtony/add-ops-BaseContext

reuse context for controller-manager base-context
This commit is contained in:
karmada-bot 2022-11-05 20:00:46 +08:00 committed by GitHub
commit c669017ce3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
19 changed files with 26 additions and 20 deletions

View File

@ -190,6 +190,9 @@ func run(ctx context.Context, karmadaConfig karmadactl.KarmadaConfig, opts *opti
LivenessEndpointName: "/healthz",
MetricsBindAddress: opts.MetricsBindAddress,
MapperProvider: restmapper.MapperProvider,
BaseContext: func() context.Context {
return ctx
},
Controller: v1alpha1.ControllerConfigurationSpec{
GroupKindConcurrency: map[string]int{
workv1alpha1.SchemeGroupVersion.WithKind("Work").GroupKind().String(): opts.ConcurrentWorkSyncs,

View File

@ -129,6 +129,9 @@ func Run(ctx context.Context, opts *options.Options) error {
LivenessEndpointName: "/healthz",
MetricsBindAddress: opts.MetricsBindAddress,
MapperProvider: restmapper.MapperProvider,
BaseContext: func() context.Context {
return ctx
},
Controller: v1alpha1.ControllerConfigurationSpec{
GroupKindConcurrency: map[string]int{
workv1alpha1.SchemeGroupVersion.WithKind("Work").GroupKind().String(): opts.ConcurrentWorkSyncs,

View File

@ -59,7 +59,7 @@ func (c *ResourceBindingController) Reconcile(ctx context.Context, req controlle
klog.V(4).Infof("Reconciling ResourceBinding %s.", req.NamespacedName.String())
binding := &workv1alpha2.ResourceBinding{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, binding); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, binding); err != nil {
// The resource no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -59,7 +59,7 @@ func (c *ClusterResourceBindingController) Reconcile(ctx context.Context, req co
klog.V(4).Infof("Reconciling ClusterResourceBinding %s.", req.NamespacedName.String())
clusterResourceBinding := &workv1alpha2.ClusterResourceBinding{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, clusterResourceBinding); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, clusterResourceBinding); err != nil {
// The resource no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -76,7 +76,7 @@ func (c *CertRotationController) Reconcile(ctx context.Context, req controllerru
var err error
cluster := &clusterv1alpha1.Cluster{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, cluster); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, cluster); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil
@ -96,7 +96,7 @@ func (c *CertRotationController) Reconcile(ctx context.Context, req controllerru
return controllerruntime.Result{Requeue: true}, err
}
secret, err := c.ClusterClient.KubeClient.CoreV1().Secrets(c.KarmadaKubeconfigNamespace).Get(context.TODO(), KarmadaKubeconfigName, metav1.GetOptions{})
secret, err := c.ClusterClient.KubeClient.CoreV1().Secrets(c.KarmadaKubeconfigNamespace).Get(ctx, KarmadaKubeconfigName, metav1.GetOptions{})
if err != nil {
klog.Errorf("failed to get karmada kubeconfig secret: %v", err)
return controllerruntime.Result{Requeue: true}, err

View File

@ -158,7 +158,7 @@ func (c *Controller) Reconcile(ctx context.Context, req controllerruntime.Reques
klog.V(4).Infof("Reconciling cluster %s", req.NamespacedName.Name)
cluster := &clusterv1alpha1.Cluster{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, cluster); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, cluster); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -47,7 +47,7 @@ func (tc *NoExecuteTaintManager) Reconcile(ctx context.Context, req reconcile.Re
klog.V(4).Infof("Reconciling cluster %s for taint manager", req.NamespacedName.Name)
cluster := &clusterv1alpha1.Cluster{}
if err := tc.Client.Get(context.TODO(), req.NamespacedName, cluster); err != nil {
if err := tc.Client.Get(ctx, req.NamespacedName, cluster); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -53,7 +53,7 @@ func (c *Controller) Reconcile(ctx context.Context, req controllerruntime.Reques
klog.V(4).Infof("Reconciling Work %s", req.NamespacedName.String())
work := &workv1alpha1.Work{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, work); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, work); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -49,7 +49,7 @@ func (c *StatusController) Reconcile(ctx context.Context, req controllerruntime.
klog.V(4).Infof("FederatedResourceQuota status controller reconciling %s", req.NamespacedName.String())
quota := &policyv1alpha1.FederatedResourceQuota{}
if err := c.Get(context.TODO(), req.NamespacedName, quota); err != nil {
if err := c.Get(ctx, req.NamespacedName, quota); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil
@ -62,7 +62,7 @@ func (c *StatusController) Reconcile(ctx context.Context, req controllerruntime.
}
workList := &workv1alpha1.WorkList{}
if err := c.List(context.TODO(), workList, &client.ListOptions{
if err := c.List(ctx, workList, &client.ListOptions{
LabelSelector: labels.SelectorFromSet(labels.Set{
util.FederatedResourceQuotaNamespaceLabel: quota.Namespace,
util.FederatedResourceQuotaNameLabel: quota.Name,

View File

@ -45,7 +45,7 @@ func (c *SyncController) Reconcile(ctx context.Context, req controllerruntime.Re
klog.V(4).Infof("FederatedResourceQuota sync controller reconciling %s", req.NamespacedName.String())
quota := &policyv1alpha1.FederatedResourceQuota{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, quota); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, quota); err != nil {
if apierrors.IsNotFound(err) {
klog.V(4).Infof("Begin to cleanup works created by federatedResourceQuota(%s)", req.NamespacedName.String())
if err = c.cleanUpWorks(req.Namespace, req.Name); err != nil {
@ -58,7 +58,7 @@ func (c *SyncController) Reconcile(ctx context.Context, req controllerruntime.Re
}
clusterList := &clusterv1alpha1.ClusterList{}
if err := c.Client.List(context.TODO(), clusterList); err != nil {
if err := c.Client.List(ctx, clusterList); err != nil {
klog.Errorf("Failed to list clusters, error: %v", err)
return controllerruntime.Result{Requeue: true}, err
}

View File

@ -38,7 +38,7 @@ func (c *CRBGracefulEvictionController) Reconcile(ctx context.Context, req contr
klog.V(4).Infof("Reconciling ClusterResourceBinding %s.", req.NamespacedName.String())
binding := &workv1alpha2.ClusterResourceBinding{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, binding); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, binding); err != nil {
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil
}

View File

@ -38,7 +38,7 @@ func (c *RBGracefulEvictionController) Reconcile(ctx context.Context, req contro
klog.V(4).Infof("Reconciling ResourceBinding %s.", req.NamespacedName.String())
binding := &workv1alpha2.ResourceBinding{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, binding); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, binding); err != nil {
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil
}

View File

@ -44,7 +44,7 @@ func (c *HorizontalPodAutoscalerController) Reconcile(ctx context.Context, req c
klog.V(4).Infof("Reconciling HorizontalPodAutoscaler %s.", req.NamespacedName.String())
hpa := &autoscalingv1.HorizontalPodAutoscaler{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, hpa); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, hpa); err != nil {
// The resource may no longer exist, in which case we delete related works.
if apierrors.IsNotFound(err) {
if err := c.deleteWorks(names.GenerateWorkName(util.HorizontalPodAutoscalerKind, req.Name, req.Namespace)); err != nil {

View File

@ -36,7 +36,7 @@ func (c *EndpointSliceController) Reconcile(ctx context.Context, req controllerr
klog.V(4).Infof("Reconciling Work %s.", req.NamespacedName.String())
work := &workv1alpha1.Work{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, work); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, work); err != nil {
if apierrors.IsNotFound(err) {
// Cleanup derived EndpointSlices after work has been removed.
err = helper.DeleteEndpointSlice(c.Client, labels.Set{

View File

@ -68,7 +68,7 @@ func (c *ServiceExportController) Reconcile(ctx context.Context, req controllerr
klog.V(4).Infof("Reconciling Work %s", req.NamespacedName.String())
work := &workv1alpha1.Work{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, work); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, work); err != nil {
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil
}

View File

@ -31,7 +31,7 @@ func (c *ServiceImportController) Reconcile(ctx context.Context, req controllerr
klog.V(4).Infof("Reconciling ServiceImport %s.", req.NamespacedName.String())
svcImport := &mcsv1alpha1.ServiceImport{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, svcImport); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, svcImport); err != nil {
if apierrors.IsNotFound(err) {
return c.deleteDerivedService(req.NamespacedName)
}

View File

@ -108,7 +108,7 @@ func (c *ClusterStatusController) Reconcile(ctx context.Context, req controllerr
klog.V(4).Infof("Syncing cluster status: %s", req.NamespacedName.Name)
cluster := &clusterv1alpha1.Cluster{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, cluster); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, cluster); err != nil {
// The resource may no longer exist, in which case we stop the informer.
if apierrors.IsNotFound(err) {
c.GenericInformerManager.Stop(req.NamespacedName.Name)

View File

@ -63,7 +63,7 @@ func (c *WorkStatusController) Reconcile(ctx context.Context, req controllerrunt
klog.V(4).Infof("Reconciling status of Work %s.", req.NamespacedName.String())
work := &workv1alpha1.Work{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, work); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, work); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil

View File

@ -48,7 +48,7 @@ func (c *Controller) Reconcile(ctx context.Context, req controllerruntime.Reques
klog.V(4).Infof("Reconciling cluster %s", req.NamespacedName.String())
cluster := &clusterv1alpha1.Cluster{}
if err := c.Client.Get(context.TODO(), req.NamespacedName, cluster); err != nil {
if err := c.Client.Get(ctx, req.NamespacedName, cluster); err != nil {
// The resource may no longer exist, in which case we stop processing.
if apierrors.IsNotFound(err) {
return controllerruntime.Result{}, nil