@@ -237,8 +237,14 @@ func (r *Reconciler) reconcileExists(ctx context.Context, name types.NamespacedN
237
237
log .Error (err , "building deployment objects" )
238
238
return statusInfo , fmt .Errorf ("error building deployment objects: %v" , err )
239
239
}
240
- statusInfo .Manifest = objects
240
+
241
+ objects , err = flattenListObjects (objects )
242
+ if err != nil {
243
+ log .Error (err , "flattening list objects" )
244
+ return statusInfo , fmt .Errorf ("error flattening list objects: %w" , err )
245
+ }
241
246
log .WithValues ("objects" , fmt .Sprintf ("%d" , len (objects .Items ))).Info ("built deployment objects" )
247
+ statusInfo .Manifest = objects
242
248
243
249
if r .options .status != nil {
244
250
isValidVersion , err := r .options .status .VersionCheck (ctx , instance , objects )
@@ -255,13 +261,6 @@ func (r *Reconciler) reconcileExists(ctx context.Context, name types.NamespacedN
255
261
}
256
262
}
257
263
258
- objects , err = parseListKind (objects )
259
- if err != nil {
260
- log .Error (err , "Parsing list kind" )
261
- return statusInfo , fmt .Errorf ("error parsing list kind: %v" , err )
262
- }
263
- statusInfo .Manifest = objects
264
-
265
264
err = r .setNamespaces (ctx , instance , objects )
266
265
if err != nil {
267
266
return statusInfo , err
@@ -711,7 +710,9 @@ func (r *Reconciler) AddHook(hook Hook) {
711
710
r .options .hooks = append (r .options .hooks , hook )
712
711
}
713
712
714
- func parseListKind (infos * manifest.Objects ) (* manifest.Objects , error ) {
713
+ // flattenListObjects will replace any List objects in the manifest with the items,
714
+ // "flattening" the objects.
715
+ func flattenListObjects (infos * manifest.Objects ) (* manifest.Objects , error ) {
715
716
var out []* manifest.Object
716
717
717
718
for _ , item := range infos .Items {
0 commit comments