fix flaking test of editing policy resourceSelectors

Signed-off-by: changzhen <changzhen5@huawei.com>
This commit is contained in:
changzhen 2022-12-13 15:31:25 +08:00
parent 37cca1cd8d
commit 598935a5f7
1 changed files with 10 additions and 21 deletions

View File

@ -537,9 +537,17 @@ func (d *ResourceDetector) GetUnstructuredObject(objectKey keys.ClusterWideKey)
object, err := d.InformerManager.Lister(objectGVR).Get(objectKey.NamespaceKey())
if err != nil {
if !apierrors.IsNotFound(err) {
klog.Errorf("Failed to get object(%s), error: %v", objectKey, err)
if apierrors.IsNotFound(err) {
// If the target object is not found in the informer cache,
// use the DynamicClient to get the target object again.
var object *unstructured.Unstructured
object, err = d.DynamicClient.Resource(objectGVR).Namespace(objectKey.Namespace).
Get(context.TODO(), objectKey.Name, metav1.GetOptions{})
if err == nil {
return object, nil
}
}
klog.Errorf("Failed to get object(%s), error: %v", objectKey, err)
return nil, err
}
@ -552,25 +560,6 @@ func (d *ResourceDetector) GetUnstructuredObject(objectKey keys.ClusterWideKey)
return unstructuredObj, nil
}
// GetObject retrieves object from local cache.
func (d *ResourceDetector) GetObject(objectKey keys.ClusterWideKey) (runtime.Object, error) {
objectGVR, err := restmapper.GetGroupVersionResource(d.RESTMapper, objectKey.GroupVersionKind())
if err != nil {
klog.Errorf("Failed to get GVK of object: %s, error: %v", objectKey, err)
return nil, err
}
object, err := d.InformerManager.Lister(objectGVR).Get(objectKey.NamespaceKey())
if err != nil {
if !apierrors.IsNotFound(err) {
klog.Errorf("Failed to get object(%s), error: %v", objectKey, err)
}
return nil, err
}
return object, nil
}
// ClaimPolicyForObject set policy identifier which the object associated with.
func (d *ResourceDetector) ClaimPolicyForObject(object *unstructured.Unstructured, policyNamespace string, policyName string) error {
claimedNS := util.GetLabelValue(object.GetLabels(), policyv1alpha1.PropagationPolicyNamespaceLabel)