func()

in internal/handler/appdeployment.go [91:106]


func (a *AppDeploymentHandler) EnsureFinalizerDeleted(ctx context.Context) (reconciler.OperationResult, error) {
	a.logger.V(1).Info("Operation EnsureFinalizerDeleted")
	if !a.appDeployment.ObjectMeta.DeletionTimestamp.IsZero() && controllerutil.ContainsFinalizer(a.appDeployment, v1alpha1.AppDeploymentFinalizerName) {
		if a.phaseIs(v1alpha1.AppDeploymentPhaseDeleted) {
			a.logger.V(1).Info("All app deleted removing finalizer")
			controllerutil.RemoveFinalizer(a.appDeployment, v1alpha1.AppDeploymentFinalizerName)
			return reconciler.RequeueOnErrorOrContinue(a.client.Update(ctx, a.appDeployment))
		}
		if !a.phaseIs(v1alpha1.AppDeploymentPhaseDeleting) {
			a.logger.V(1).Info("App is not deleted yet, setting phase to deleting")
			a.appDeployment.Status.Phase = v1alpha1.AppDeploymentPhaseDeleting
			return reconciler.RequeueOnErrorOrContinue(a.client.Status().Update(ctx, a.appDeployment))
		}
	}
	return reconciler.ContinueProcessing()
}