Skip to content

Commit 7cb4528

Browse files
committed
address comments
Signed-off-by: Zhiying Lin <[email protected]>
1 parent e024751 commit 7cb4528

File tree

2 files changed

+68
-76
lines changed

2 files changed

+68
-76
lines changed

pkg/controllers/clusterresourceplacement/resource_selector.go

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ func convertResourceSelector(old []fleetv1alpha1.ClusterResourceSelector) []flee
129129
}
130130

131131
// gatherSelectedResource gets all the resources according to the resource selector.
132-
func (r *Reconciler) gatherSelectedResource(placementName types.NamespacedName, selectors []fleetv1beta1.ClusterResourceSelector) ([]*unstructured.Unstructured, error) {
132+
func (r *Reconciler) gatherSelectedResource(placementKey types.NamespacedName, selectors []fleetv1beta1.ClusterResourceSelector) ([]*unstructured.Unstructured, error) {
133133
var resources []*unstructured.Unstructured
134134
var resourceMap = make(map[fleetv1beta1.ResourceIdentifier]bool)
135135
for _, selector := range selectors {
@@ -145,10 +145,10 @@ func (r *Reconciler) gatherSelectedResource(placementName types.NamespacedName,
145145
}
146146
var objs []runtime.Object
147147
var err error
148-
if gvk == utils.NamespaceGVK && placementName.Namespace == "" {
149-
objs, err = r.fetchNamespaceResources(selector, placementName.Name)
148+
if gvk == utils.NamespaceGVK && placementKey.Namespace == "" {
149+
objs, err = r.fetchNamespaceResources(selector, placementKey.Name)
150150
} else {
151-
objs, err = r.fetchResources(selector, placementName)
151+
objs, err = r.fetchResources(selector, placementKey)
152152
}
153153
if err != nil {
154154
return nil, err
@@ -164,7 +164,7 @@ func (r *Reconciler) gatherSelectedResource(placementName types.NamespacedName,
164164
}
165165
if _, exist := resourceMap[ri]; exist {
166166
err = fmt.Errorf("found duplicate resource %+v", ri)
167-
klog.ErrorS(err, "User selected one resource more than once", "resource", ri, "placement", placementName)
167+
klog.ErrorS(err, "User selected one resource more than once", "resource", ri, "placement", placementKey)
168168
return nil, controller.NewUserError(err)
169169
}
170170
resourceMap[ri] = true
@@ -231,15 +231,15 @@ func buildApplyOrderMap() map[string]int {
231231
}
232232

233233
// fetchResources retrieves the objects based on the selector.
234-
func (r *Reconciler) fetchResources(selector fleetv1beta1.ClusterResourceSelector, placementName types.NamespacedName) ([]runtime.Object, error) {
235-
klog.V(2).InfoS("Start to fetch resources by the selector", "selector", selector, "placement", placementName)
234+
func (r *Reconciler) fetchResources(selector fleetv1beta1.ClusterResourceSelector, placementKey types.NamespacedName) ([]runtime.Object, error) {
235+
klog.V(2).InfoS("Start to fetch resources by the selector", "selector", selector, "placement", placementKey)
236236
gk := schema.GroupKind{
237237
Group: selector.Group,
238238
Kind: selector.Kind,
239239
}
240240
restMapping, err := r.RestMapper.RESTMapping(gk, selector.Version)
241241
if err != nil {
242-
return nil, controller.NewUserError(fmt.Errorf("invalid placement %s, failed to get GVR of the selector: %w", placementName, err))
242+
return nil, controller.NewUserError(fmt.Errorf("invalid placement %s, failed to get GVR of the selector: %w", placementKey, err))
243243
}
244244
gvr := restMapping.Resource
245245
gvk := schema.GroupVersionKind{
@@ -249,21 +249,21 @@ func (r *Reconciler) fetchResources(selector fleetv1beta1.ClusterResourceSelecto
249249
}
250250

251251
isNamespacedResource := !r.InformerManager.IsClusterScopedResources(gvk)
252-
if isNamespacedResource && placementName.Namespace == "" {
252+
if isNamespacedResource && placementKey.Namespace == "" {
253253
// If it's a namespace-scoped resource but placement has no namespace, return error.
254-
err := fmt.Errorf("invalid placement %s: cannot select namespace-scoped resource %v without a namespace", placementName, gvr)
254+
err := fmt.Errorf("invalid placement %s: cannot select namespace-scoped resource %v in a clusterResourcePlacement", placementKey, gvr)
255255
klog.ErrorS(err, "Invalid resource selector", "selector", selector)
256256
return nil, controller.NewUserError(err)
257-
} else if !isNamespacedResource && placementName.Namespace != "" {
257+
} else if !isNamespacedResource && placementKey.Namespace != "" {
258258
// If it's a cluster-scoped resource but placement has a namespace, return error.
259-
err := fmt.Errorf("invalid placement %s: cannot select cluster-scoped resource %v with a namespace", placementName, gvr)
259+
err := fmt.Errorf("invalid placement %s: cannot select cluster-scoped resource %v in a resourcePlacement", placementKey, gvr)
260260
klog.ErrorS(err, "Invalid resource selector", "selector", selector)
261261
return nil, controller.NewUserError(err)
262262
}
263263

264264
if !r.InformerManager.IsInformerSynced(gvr) {
265265
err := fmt.Errorf("informer cache for %+v is not synced yet", restMapping.Resource)
266-
klog.ErrorS(err, "Informer cache is not synced", "gvr", gvr, "placement", placementName)
266+
klog.ErrorS(err, "Informer cache is not synced", "gvr", gvr, "placement", placementKey)
267267
return nil, controller.NewExpectedBehaviorError(err)
268268
}
269269

@@ -275,19 +275,19 @@ func (r *Reconciler) fetchResources(selector fleetv1beta1.ClusterResourceSelecto
275275
var err error
276276

277277
if isNamespacedResource {
278-
obj, err = lister.ByNamespace(placementName.Namespace).Get(selector.Name)
278+
obj, err = lister.ByNamespace(placementKey.Namespace).Get(selector.Name)
279279
} else {
280280
obj, err = lister.Get(selector.Name)
281281
}
282282

283283
if err != nil {
284-
klog.ErrorS(err, "Cannot get the resource", "gvr", gvr, "name", selector.Name, "namespace", placementName.Namespace)
284+
klog.ErrorS(err, "Cannot get the resource", "gvr", gvr, "name", selector.Name, "namespace", placementKey.Namespace)
285285
return nil, controller.NewAPIServerError(true, client.IgnoreNotFound(err))
286286
}
287287
if uObj := obj.DeepCopyObject().(*unstructured.Unstructured); uObj.GetDeletionTimestamp() != nil {
288288
// skip a to be deleted resource
289289
klog.V(2).InfoS("Skip the deleting resource by the selector",
290-
"selector", selector, "placement", placementName, "resourceName", uObj.GetName())
290+
"selector", selector, "placement", placementKey, "resourceName", uObj.GetName())
291291
return []runtime.Object{}, nil
292292
}
293293
return []runtime.Object{obj}, nil
@@ -308,21 +308,21 @@ func (r *Reconciler) fetchResources(selector fleetv1beta1.ClusterResourceSelecto
308308
var objects []runtime.Object
309309

310310
if isNamespacedResource {
311-
objects, err = lister.ByNamespace(placementName.Namespace).List(labelSelector)
311+
objects, err = lister.ByNamespace(placementKey.Namespace).List(labelSelector)
312312
} else {
313313
objects, err = lister.List(labelSelector)
314314
}
315315
if err != nil {
316-
klog.ErrorS(err, "Cannot list all the objects", "gvr", gvr, "labelSelector", labelSelector, "placement", placementName)
316+
klog.ErrorS(err, "Cannot list all the objects", "gvr", gvr, "labelSelector", labelSelector, "placement", placementKey)
317317
return nil, controller.NewAPIServerError(true, err)
318318
}
319319

320320
// go ahead and claim all objects by adding a finalizer and insert the placement in its annotation
321321
for i := 0; i < len(objects); i++ {
322322
if uObj := objects[i].DeepCopyObject().(*unstructured.Unstructured); uObj.GetDeletionTimestamp() != nil {
323323
// skip a to be deleted resource
324-
klog.V(2).InfoS("skip the deleting resource by the selector",
325-
"selector", selector, "placement", placementName, "resourceName", uObj.GetName())
324+
klog.V(2).InfoS("Skip the deleting resource by the selector",
325+
"selector", selector, "placement", placementKey, "resourceName", uObj.GetName())
326326
continue
327327
}
328328
selectedObjs = append(selectedObjs, objects[i])

0 commit comments

Comments
 (0)