Skip to content

Commit

Permalink
Adding Checks for Fleet Existence During Application Deletion
Browse files Browse the repository at this point in the history
Signed-off-by: LiZhenCheng9527 <lizhencheng6@huawei.com>
  • Loading branch information
LiZhenCheng9527 committed Feb 20, 2024
1 parent 386cab0 commit b4fc885
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions pkg/fleet-manager/application/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -316,8 +316,20 @@ func (a *ApplicationManager) reconcileSyncStatus(ctx context.Context, app *appli
}

func (a *ApplicationManager) reconcileDelete(ctx context.Context, app *applicationapi.Application, fleet *fleetapi.Fleet) (ctrl.Result, error) {
if err := a.deleteResourcesInMemberClusters(ctx, app, fleet); err != nil {
return ctrl.Result{}, errors.Wrapf(err, "failed to delete rollout resource in cluster")
log := ctrl.LoggerFrom(ctx)

fleetKey := generateFleetKey(app)
if err := a.Client.Get(ctx, fleetKey, fleet); err != nil {
if apierrors.IsNotFound(err) {
log.Info("delete failed, fleet does not exist", "fleet", fleetKey)
return ctrl.Result{RequeueAfter: fleetmanager.RequeueAfter}, nil
}
log.Error(err, "delete failed, fleet does not found", "fleet", fleetKey)
return ctrl.Result{}, err
}

if deleteErr := a.deleteResourcesInMemberClusters(ctx, app, fleet); deleteErr != nil {
return ctrl.Result{}, errors.Wrapf(deleteErr, "failed to delete rollout resource in cluster")
}

controllerutil.RemoveFinalizer(app, ApplicationFinalizer)
Expand Down

0 comments on commit b4fc885

Please sign in to comment.