diff --git a/internal/controller/irsasetup_controller.go b/internal/controller/irsasetup_controller.go index 99567d1..a17820a 100644 --- a/internal/controller/irsasetup_controller.go +++ b/internal/controller/irsasetup_controller.go @@ -18,7 +18,6 @@ package controller import ( "context" - "errors" "k8s.io/apimachinery/pkg/runtime" ctrl "sigs.k8s.io/controller-runtime" @@ -105,6 +104,11 @@ func (r *IRSASetupReconciler) Reconcile(ctx context.Context, req ctrl.Request) ( if !obj.DeletionTimestamp.IsZero() { err = r.reconcileDelete(ctx, obj, kubeClient) + if err != nil { + return ctrl.Result{}, err + } + controllerutil.RemoveFinalizer(obj, irsamanagerFinalizer) + err = r.Update(ctx, obj) if err == nil { log.Info("successfully deleted") } @@ -149,14 +153,7 @@ func (r *IRSASetupReconciler) reconcileDelete(ctx context.Context, obj *irsav1al if err != nil { return err } - err = selfhosted.Delete(ctx, factory) - if err != nil { - return err - } - if !controllerutil.RemoveFinalizer(obj, irsamanagerFinalizer) { - return errors.New("failed to remove finalizer") - } - return r.Update(ctx, obj) + return selfhosted.Delete(ctx, factory) } // reconcileSelfhosted ensures that the self-hosted resources are set up correctly. diff --git a/internal/selfhosted/webhook/base_manifests.go b/internal/selfhosted/webhook/base_manifests.go index f254614..493b1e4 100644 --- a/internal/selfhosted/webhook/base_manifests.go +++ b/internal/selfhosted/webhook/base_manifests.go @@ -111,9 +111,8 @@ func (b *baseManifestFactory) deployment() *appsv1.Deployment { ServiceAccountName: b.serviceAccountMeta.Name, Containers: []corev1.Container{ { - Name: "pod-identity-webhook", - Image: "amazon/amazon-eks-pod-identity-webhook:latest", - + Name: "pod-identity-webhook", + Image: "amazon/amazon-eks-pod-identity-webhook:latest", ImagePullPolicy: corev1.PullAlways, // Command: []string{}, // Command must be patched VolumeMounts: []corev1.VolumeMount{