@@ -13,7 +13,6 @@ import (
13
13
"k8s.io/apimachinery/pkg/api/meta"
14
14
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
15
15
"k8s.io/apimachinery/pkg/runtime"
16
- ctrl "sigs.k8s.io/controller-runtime"
17
16
"sigs.k8s.io/controller-runtime/pkg/client"
18
17
logf "sigs.k8s.io/controller-runtime/pkg/log"
19
18
@@ -49,38 +48,40 @@ func setSuccessfulServiceAccountsCondition(cr *v1beta1.Grafana, message string)
49
48
50
49
type GrafanaServiceAccountReconciler struct {
51
50
client.Client
52
- Scheme * runtime.Scheme
51
+ scheme * runtime.Scheme
53
52
}
54
53
55
- func (r * GrafanaServiceAccountReconciler ) reconcile (ctx context.Context , cr * v1beta1.Grafana ) (ctrl.Result , error ) {
56
- if cr .Spec .GrafanaServiceAccounts == nil && cr .Status .GrafanaServiceAccounts == nil {
57
- return ctrl.Result {}, nil
54
+ func newGrafanaServiceAccountReconciler (client client.Client , scheme * runtime.Scheme ) * GrafanaServiceAccountReconciler {
55
+ return & GrafanaServiceAccountReconciler {
56
+ Client : client ,
57
+ scheme : scheme ,
58
58
}
59
+ }
59
60
60
- if ! meta . IsStatusConditionPresentAndEqual ( cr . Status . Conditions , ConditionTypeGrafanaReady , metav1 . ConditionTrue ) {
61
- setFailedServiceAccountsCondition ( cr , "Grafana instance isn't ready yet" )
62
- return ctrl. Result { RequeueAfter : RequeueDelay }, nil
61
+ func ( r * GrafanaServiceAccountReconciler ) reconcile ( ctx context. Context , cr * v1beta1. Grafana ) error {
62
+ if cr . Spec . GrafanaServiceAccounts == nil && cr . Status . GrafanaServiceAccounts == nil {
63
+ return nil
63
64
}
64
65
65
66
gClient , err := client2 .NewGeneratedGrafanaClient (ctx , r .Client , cr )
66
67
if err != nil {
67
68
setFailedServiceAccountsCondition (cr , err .Error ())
68
- return ctrl. Result {}, fmt .Errorf ("building grafana client: %w" , err )
69
+ return fmt .Errorf ("building grafana client: %w" , err )
69
70
}
70
71
71
- err = r .reconcileAccounts (ctx , cr , gClient , r .Scheme )
72
+ err = r .reconcileAccounts (ctx , cr , gClient , r .scheme )
72
73
if err != nil {
73
74
setFailedServiceAccountsCondition (cr , err .Error ())
74
- return ctrl. Result {}, fmt .Errorf ("reconciling service accounts: %w" , err )
75
+ return fmt .Errorf ("reconciling service accounts: %w" , err )
75
76
}
76
77
setSuccessfulServiceAccountsCondition (cr , "service accounts reconciled" )
77
78
78
79
if cr .Spec .GrafanaServiceAccounts == nil {
79
80
// Spec is empty, so we don't need to check periodically the service accounts status.
80
- return ctrl. Result {}, nil
81
+ return nil
81
82
}
82
83
83
- return ctrl. Result {}, nil
84
+ return nil
84
85
}
85
86
86
87
// syncAccounts checks if the service accounts status in the Grafana CR is up to date
0 commit comments