@@ -84,16 +84,9 @@ func NewHelper(obj client.Object, crClient client.Client) (*Helper, error) {
84
84
return nil , errors .Wrapf (err , "failed to identify condition fields for object %s" , klog .KObj (obj ))
85
85
}
86
86
87
- // Convert the object to unstructured to compare against our before copy.
88
- unstructuredObj , err := toUnstructured (obj , gvk )
89
- if err != nil {
90
- return nil , errors .Wrapf (err , "failed to create patch helper for %s %s: failed to convert object to Unstructured" , gvk .Kind , klog .KObj (obj ))
91
- }
92
-
93
87
return & Helper {
94
88
client : crClient ,
95
89
gvk : gvk ,
96
- before : unstructuredObj ,
97
90
beforeObject : obj .DeepCopyObject ().(client.Object ),
98
91
metav1ConditionsFieldPath : metav1ConditionsFieldPath ,
99
92
clusterv1ConditionsFieldPath : clusterv1ConditionsFieldPath ,
@@ -138,10 +131,16 @@ func (h *Helper) Patch(ctx context.Context, obj client.Object, opts ...Option) e
138
131
h .metav1ConditionsFieldPath = nil
139
132
}
140
133
141
- // Convert the object to unstructured to compare against our before copy.
134
+ // Convert the before object to unstructured.
135
+ h .before , err = toUnstructured (h .beforeObject , gvk )
136
+ if err != nil {
137
+ return errors .Wrapf (err , "failed to patch %s %s: failed to convert before object to Unstructured" , h .gvk .Kind , klog .KObj (h .beforeObject ))
138
+ }
139
+
140
+ // Convert the after object to unstructured.
142
141
h .after , err = toUnstructured (obj , gvk )
143
142
if err != nil {
144
- return errors .Wrapf (err , "failed to patch %s %s: failed to convert object to Unstructured" , h .gvk .Kind , klog .KObj (h .beforeObject ))
143
+ return errors .Wrapf (err , "failed to patch %s %s: failed to convert after object to Unstructured" , h .gvk .Kind , klog .KObj (h .beforeObject ))
145
144
}
146
145
147
146
// Determine if the object has status.
0 commit comments