@@ -476,8 +476,13 @@ func (d *ResourceDetector) ApplyPolicy(object *unstructured.Unstructured, object
476476 bindingCopy .Spec .Placement = binding .Spec .Placement
477477 bindingCopy .Spec .Failover = binding .Spec .Failover
478478 bindingCopy .Spec .ConflictResolution = binding .Spec .ConflictResolution
479- bindingCopy .Spec .Suspension = binding .Spec .Suspension
480479 bindingCopy .Spec .PreserveResourcesOnDeletion = binding .Spec .PreserveResourcesOnDeletion
480+ if binding .Spec .Suspension != nil {
481+ if bindingCopy .Spec .Suspension == nil {
482+ bindingCopy .Spec .Suspension = & workv1alpha2.Suspension {}
483+ }
484+ bindingCopy .Spec .Suspension .Suspension = binding .Spec .Suspension .Suspension
485+ }
481486 excludeClusterPolicy (bindingCopy )
482487 return nil
483488 })
@@ -565,8 +570,13 @@ func (d *ResourceDetector) ApplyClusterPolicy(object *unstructured.Unstructured,
565570 bindingCopy .Spec .Placement = binding .Spec .Placement
566571 bindingCopy .Spec .Failover = binding .Spec .Failover
567572 bindingCopy .Spec .ConflictResolution = binding .Spec .ConflictResolution
568- bindingCopy .Spec .Suspension = binding .Spec .Suspension
569573 bindingCopy .Spec .PreserveResourcesOnDeletion = binding .Spec .PreserveResourcesOnDeletion
574+ if binding .Spec .Suspension != nil {
575+ if bindingCopy .Spec .Suspension == nil {
576+ bindingCopy .Spec .Suspension = & workv1alpha2.Suspension {}
577+ }
578+ bindingCopy .Spec .Suspension .Suspension = binding .Spec .Suspension .Suspension
579+ }
570580 return nil
571581 })
572582 return err
@@ -612,8 +622,13 @@ func (d *ResourceDetector) ApplyClusterPolicy(object *unstructured.Unstructured,
612622 bindingCopy .Spec .Placement = binding .Spec .Placement
613623 bindingCopy .Spec .Failover = binding .Spec .Failover
614624 bindingCopy .Spec .ConflictResolution = binding .Spec .ConflictResolution
615- bindingCopy .Spec .Suspension = binding .Spec .Suspension
616625 bindingCopy .Spec .PreserveResourcesOnDeletion = binding .Spec .PreserveResourcesOnDeletion
626+ if binding .Spec .Suspension != nil {
627+ if bindingCopy .Spec .Suspension == nil {
628+ bindingCopy .Spec .Suspension = & workv1alpha2.Suspension {}
629+ }
630+ bindingCopy .Spec .Suspension .Suspension = binding .Spec .Suspension .Suspension
631+ }
617632 return nil
618633 })
619634 return err
0 commit comments