@@ -83,15 +83,9 @@ func (r *CollectorReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
83
83
return ctrl.Result {}, err
84
84
}
85
85
86
- tenantsToDisown , err := r .getTenantsReferencingCollectorButNotSelected (ctx , collector , tenants )
87
- if err != nil {
88
- return ctrl.Result {}, err
89
- }
86
+ tenantsToDisown := r .getTenantsReferencingCollectorButNotSelected (ctx , collector , tenants )
90
87
91
- err = r .disownTenants (ctx , tenantsToDisown )
92
- if err != nil {
93
- return ctrl.Result {}, err
94
- }
88
+ r .disownTenants (ctx , tenantsToDisown )
95
89
96
90
tenantNames := []string {}
97
91
@@ -101,7 +95,6 @@ func (r *CollectorReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
101
95
102
96
logger .Info ("Setting collector status" )
103
97
104
-
105
98
subscriptions := []v1alpha1.Subscription {}
106
99
107
100
for _ , tenant := range tenants {
@@ -124,15 +117,9 @@ func (r *CollectorReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
124
117
return ctrl.Result {}, err
125
118
}
126
119
127
- subscriptionsToDisown , err := r .getSubscriptionsReferencingTenantButNotSelected (ctx , & tenant , subscriptionsForTenant )
128
- if err != nil {
129
- return ctrl.Result {}, err
130
- }
120
+ subscriptionsToDisown := r .getSubscriptionsReferencingTenantButNotSelected (ctx , & tenant , subscriptionsForTenant )
131
121
132
- err = r .disownSubscriptions (ctx , subscriptionsToDisown )
133
- if err != nil {
134
- return ctrl.Result {}, err
135
- }
122
+ r .disownSubscriptions (ctx , subscriptionsToDisown )
136
123
137
124
subscriptions = append (subscriptions , subscriptionsForTenant ... )
138
125
@@ -159,7 +146,6 @@ func (r *CollectorReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
159
146
slices .Sort (logsourceNamespacesForTenant )
160
147
tenant .Status .LogSourceNamespaces = logsourceNamespacesForTenant
161
148
162
-
163
149
if err := r .Status ().Update (ctx , & tenant ); err != nil {
164
150
return ctrl.Result {}, err
165
151
}
@@ -172,8 +158,11 @@ func (r *CollectorReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
172
158
173
159
collector .Status .Tenants = tenantNames
174
160
175
- r .Status ().Update (ctx , collector )
176
161
logger .Info ("Setting collector status" )
162
+ err = r .Status ().Update (ctx , collector )
163
+ if err != nil {
164
+ return ctrl.Result {}, err
165
+ }
177
166
178
167
outputs , err := r .getAllOutputs (ctx )
179
168
if err != nil {
@@ -310,10 +299,7 @@ func (r *CollectorReconciler) SetupWithManager(mgr ctrl.Manager) error {
310
299
}
311
300
}
312
301
313
- tenantsToDisown , err := r .getTenantsReferencingCollectorButNotSelected (ctx , & collector , tenantsForCollector )
314
- if err != nil {
315
- return nil
316
- }
302
+ tenantsToDisown := r .getTenantsReferencingCollectorButNotSelected (ctx , & collector , tenantsForCollector )
317
303
318
304
for _ , t := range tenantsToDisown {
319
305
if t .Name == tenant .Name {
@@ -351,7 +337,7 @@ func (r *CollectorReconciler) SetupWithManager(mgr ctrl.Manager) error {
351
337
}
352
338
}
353
339
354
- subscriptionstoDisown , err := r .getSubscriptionsReferencingTenantButNotSelected (ctx , & tenant , subscriptionsForTenant )
340
+ subscriptionstoDisown := r .getSubscriptionsReferencingTenantButNotSelected (ctx , & tenant , subscriptionsForTenant )
355
341
if err != nil {
356
342
return nil
357
343
}
@@ -411,6 +397,7 @@ func (r *CollectorReconciler) reconcileServiceAccount(ctx context.Context, colle
411
397
412
398
return v1alpha1.NamespacedName {Namespace : serviceAccount .Namespace , Name : serviceAccount .Name }, nil
413
399
}
400
+
414
401
func (r * CollectorReconciler ) reconcileClusterRoleBinding (ctx context.Context , collector * v1alpha1.Collector ) error {
415
402
logger := log .FromContext (ctx )
416
403
@@ -473,7 +460,6 @@ func (r *CollectorReconciler) reconcileClusterRole(ctx context.Context, collecto
473
460
return err
474
461
}
475
462
476
-
477
463
func getSubscriptionNamesFromSubscription (subscriptions []v1alpha1.Subscription ) []v1alpha1.NamespacedName {
478
464
subscriptionNames := make ([]v1alpha1.NamespacedName , len (subscriptions ))
479
465
for i , subscription := range subscriptions {
@@ -502,15 +488,17 @@ func (r *CollectorReconciler) getTenantsMatchingSelectors(ctx context.Context, l
502
488
return tenantsForSelector .Items , nil
503
489
}
504
490
505
- func (r * CollectorReconciler ) getTenantsReferencingCollectorButNotSelected (ctx context.Context , collector * v1alpha1.Collector , selectedTenants []v1alpha1.Tenant ) ([]v1alpha1.Tenant , error ) {
491
+ func (r * CollectorReconciler ) getTenantsReferencingCollectorButNotSelected (ctx context.Context , collector * v1alpha1.Collector , selectedTenants []v1alpha1.Tenant ) []v1alpha1.Tenant {
492
+ logger := log .FromContext (ctx )
506
493
var tenantsReferencing v1alpha1.TenantList
507
494
508
495
listOpts := & client.ListOptions {
509
496
FieldSelector : fields .OneTermEqualSelector (collectorReferenceField , collector .Name ),
510
497
}
511
498
512
499
if err := r .Client .List (ctx , & tenantsReferencing , listOpts ); client .IgnoreNotFound (err ) != nil {
513
- return nil , err
500
+ logger .Error (err , "failed to list tenants that need to be detached from collector" )
501
+ return nil
514
502
}
515
503
516
504
tenantsToDisown := []v1alpha1.Tenant {}
@@ -531,32 +519,32 @@ func (r *CollectorReconciler) getTenantsReferencingCollectorButNotSelected(ctx c
531
519
532
520
}
533
521
534
- return tenantsToDisown , nil
522
+ return tenantsToDisown
535
523
536
524
}
537
525
538
- func (r * CollectorReconciler ) disownTenants (ctx context.Context , tenantsToDisown []v1alpha1.Tenant ) error {
526
+ func (r * CollectorReconciler ) disownTenants (ctx context.Context , tenantsToDisown []v1alpha1.Tenant ) {
539
527
logger := log .FromContext (ctx )
540
528
for _ , tenant := range tenantsToDisown {
541
529
tenant .Status .Collector = ""
542
530
err := r .Client .Status ().Update (ctx , & tenant )
543
531
if err != nil {
544
- return err
532
+ logger . Error ( err , fmt . Sprintf ( "failed to detach tenant %s from collector" , tenant . Name ))
545
533
}
546
534
logger .Info ("Disowning tenant" , "tenant" , tenant .Name )
547
535
}
548
-
549
- return nil
550
536
}
551
537
552
- func (r * CollectorReconciler ) getSubscriptionsReferencingTenantButNotSelected (ctx context.Context , tenant * v1alpha1.Tenant , selectedSubscriptions []v1alpha1.Subscription ) ([]v1alpha1.Subscription , error ) {
538
+ func (r * CollectorReconciler ) getSubscriptionsReferencingTenantButNotSelected (ctx context.Context , tenant * v1alpha1.Tenant , selectedSubscriptions []v1alpha1.Subscription ) []v1alpha1.Subscription {
539
+ logger := log .FromContext (ctx )
553
540
var subscriptionsReferencing v1alpha1.SubscriptionList
554
541
listOpts := & client.ListOptions {
555
542
FieldSelector : fields .OneTermEqualSelector (tenantReferenceField , tenant .Name ),
556
543
}
557
544
558
545
if err := r .Client .List (ctx , & subscriptionsReferencing , listOpts ); client .IgnoreNotFound (err ) != nil {
559
- return nil , err
546
+ logger .Error (err , "failed to list subscriptions that need to be detached from tenant" )
547
+ return nil
560
548
}
561
549
562
550
var subscriptionsToDisown []v1alpha1.Subscription
@@ -577,22 +565,21 @@ func (r *CollectorReconciler) getSubscriptionsReferencingTenantButNotSelected(ct
577
565
578
566
}
579
567
580
- return subscriptionsToDisown , nil
568
+ return subscriptionsToDisown
581
569
582
570
}
583
571
584
- func (r * CollectorReconciler ) disownSubscriptions (ctx context.Context , subscriptionsToDisown []v1alpha1.Subscription ) error {
572
+ func (r * CollectorReconciler ) disownSubscriptions (ctx context.Context , subscriptionsToDisown []v1alpha1.Subscription ) {
585
573
logger := log .FromContext (ctx )
586
574
for _ , subscription := range subscriptionsToDisown {
587
575
subscription .Status .Tenant = ""
588
576
err := r .Client .Status ().Update (ctx , & subscription )
589
577
if err != nil {
590
- return err
578
+ logger . Error ( err , fmt . Sprintf ( "failed to detach subscription %s/%s from collector" , subscription . Namespace , subscription . Name ))
591
579
}
592
580
logger .Info ("Disowning subscription" , "subscription" , fmt .Sprintf ("%s/%s" , subscription .Namespace , subscription .Name ))
593
581
}
594
582
595
- return nil
596
583
}
597
584
598
585
func (r * CollectorReconciler ) getAllOutputs (ctx context.Context ) ([]v1alpha1.OtelOutput , error ) {
0 commit comments