diff --git a/controllers/devbox/go.mod b/controllers/devbox/go.mod index a2af53dda3a..157bca97185 100644 --- a/controllers/devbox/go.mod +++ b/controllers/devbox/go.mod @@ -1,6 +1,6 @@ module github.com/labring/sealos/controllers/devbox -go 1.22.0 +go 1.23 require ( github.com/avast/retry-go v2.7.0+incompatible diff --git a/controllers/devbox/internal/controller/devbox_controller.go b/controllers/devbox/internal/controller/devbox_controller.go index b4aca506f3c..624f1b9d54c 100644 --- a/controllers/devbox/internal/controller/devbox_controller.go +++ b/controllers/devbox/internal/controller/devbox_controller.go @@ -372,6 +372,16 @@ func commitSuccess(podStatus corev1.PodPhase) bool { func (r *DevboxReconciler) removeAll(ctx context.Context, devbox *devboxv1alpha1.Devbox, recLabels map[string]string) error { // Delete Pod + var podList corev1.PodList + if err := r.List(ctx, &podList, client.InNamespace(devbox.Namespace), client.MatchingLabels(recLabels)); err != nil { + return err + } + for _, pod := range podList.Items { + controllerutil.RemoveFinalizer(&pod, FinalizerName) + if err := r.Update(ctx, &pod); err != nil { + return err + } + } if err := r.deleteResourcesByLabels(ctx, &corev1.Pod{}, devbox.Namespace, recLabels); err != nil { return err }