Skip to content

Commit 2196977

Browse files
committed
fixup! Support serviceaccount pull secrets
Signed-off-by: Todd Short <[email protected]>
1 parent 282e07b commit 2196977

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

internal/shared/controllers/pull_secret_controller.go

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,11 @@ type PullSecretReconciler struct {
4343
AuthFilePath string
4444
}
4545

46-
func (r *PullSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
46+
func (r *PullSecretReconciler) Reconcile(ctx context.Context, _ ctrl.Request) (ctrl.Result, error) {
4747
logger := log.FromContext(ctx).WithName("pull-secret-reconciler")
4848

49-
logger.Info("processing event", "name", req.Name, "namespace", req.Namespace)
50-
defer logger.Info("processed event", "name", req.Name, "namespace", req.Namespace)
49+
logger.Info("starting reconciliation")
50+
defer logger.Info("finishing reconciliation")
5151

5252
secrets := []*corev1.Secret{}
5353

@@ -64,15 +64,15 @@ func (r *PullSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request)
6464

6565
// Grab all the pull secrets from the serviceaccount and add them to the list of secrets
6666
sa := &corev1.ServiceAccount{}
67-
logger.Info("serviceaccount", "name", r.ServiceAccountKey)
6867
if err := r.Get(ctx, r.ServiceAccountKey, sa); err != nil { //nolint:nestif
6968
if apierrors.IsNotFound(err) {
70-
logger.Info("serviceaccount not found", "name", r.ServiceAccountKey.Name, "namespace", r.ServiceAccountKey.Namespace)
69+
logger.Info("serviceaccount not found", "pod-sa", logNamespacedName(r.ServiceAccountKey))
7170
} else {
72-
logger.Error(err, "failed to get serviceaccount", "name", r.ServiceAccountKey.Name, "namespace", r.ServiceAccountKey.Namespace)
71+
logger.Error(err, "failed to get serviceaccount", "pod-sa", logNamespacedName(r.ServiceAccountKey))
7372
return ctrl.Result{}, err
7473
}
7574
} else {
75+
logger.Info("found serviceaccount", "pod-sa", logNamespacedName(r.ServiceAccountKey))
7676
nn := types.NamespacedName{Namespace: r.ServiceAccountKey.Namespace}
7777
pullSecrets := []types.NamespacedName{}
7878
for _, ips := range sa.ImagePullSecrets {
@@ -90,8 +90,13 @@ func (r *PullSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request)
9090
}
9191
}
9292
// update list of pull secrets from service account
93-
logger.Info("updating list of pull secrets", "list", pullSecrets)
9493
r.ServiceAccountPullSecrets = pullSecrets
94+
// Log ever-so slightly nicer
95+
names := []string{}
96+
for _, ps := range pullSecrets {
97+
names = append(names, logNamespacedName(ps))
98+
}
99+
logger.Info("updating list of pull-secrets", "pull-secrets", names)
95100
}
96101

97102
if len(secrets) == 0 {
@@ -104,16 +109,20 @@ func (r *PullSecretReconciler) getSecret(ctx context.Context, logger logr.Logger
104109
secret := &corev1.Secret{}
105110
if err := r.Get(ctx, nn, secret); err != nil {
106111
if apierrors.IsNotFound(err) {
107-
logger.Info("secret not found", "name", nn.Name, "namespace", nn.Namespace)
112+
logger.Info("pull-secret not found", "pull-secret", logNamespacedName(nn))
108113
return nil, nil
109114
}
110-
logger.Error(err, "failed to get secret", "name", nn.Name, "namespace", nn.Namespace)
115+
logger.Error(err, "failed to get pull-secret", "pull-secret", logNamespacedName(nn))
111116
return nil, err
112117
}
113-
logger.Info("found secret", "name", nn.Name, "namespace", nn.Namespace)
118+
logger.Info("found pull-secret", "pull-secret", logNamespacedName(nn))
114119
return secret, nil
115120
}
116121

122+
func logNamespacedName(nn types.NamespacedName) string {
123+
return fmt.Sprintf("%s/%s", nn.Namespace, nn.Name)
124+
}
125+
117126
// SetupWithManager sets up the controller with the Manager.
118127
func (r *PullSecretReconciler) SetupWithManager(mgr ctrl.Manager) error {
119128
_, err := ctrl.NewControllerManagedBy(mgr).
@@ -204,7 +213,7 @@ func (r *PullSecretReconciler) writeSecretToFile(logger logr.Logger, secrets []*
204213
continue
205214
}
206215
// Ignore the unknown secret
207-
logger.Info("expected secret.Data key not found", "secret", types.NamespacedName{Name: s.Name, Namespace: s.Namespace})
216+
logger.Info("expected secret.Data key not found", "pull-secret", logNamespacedName(types.NamespacedName{Name: s.Name, Namespace: s.Namespace}))
208217
}
209218

210219
data, err := json.Marshal(jsonData)

0 commit comments

Comments
 (0)