feat: logging resource deletion

This commit is contained in:
Dario Tranchitella
2022-07-11 10:47:30 +02:00
parent a914bad7ce
commit eb699051a1
2 changed files with 10 additions and 4 deletions

View File

@@ -45,10 +45,10 @@ func GetResources(config GroupResourceBuilderConfiguration) []resources.Resource
return getDefaultResources(config)
}
// GetDeleteableResources returns a list of resources that have to be deleted when tenant control planes are deleted
// GetDeletableResources returns a list of resources that have to be deleted when tenant control planes are deleted
// Currently there is only a default approach
// TODO: the idea of this function is to become a factory to return the group of deleteable resources according to the given configuration.
func GetDeleteableResources(config GroupDeleteableResourceBuilderConfiguration) []resources.DeleteableResource {
func GetDeletableResources(config GroupDeleteableResourceBuilderConfiguration) []resources.DeleteableResource {
return getDefaultDeleteableResources(config)
}

View File

@@ -94,6 +94,8 @@ func (r *TenantControlPlaneReconciler) Reconcile(ctx context.Context, req ctrl.R
}()
if markedToBeDeleted {
log.Info("marked for deletion, performing clean-up")
groupDeleteableResourceBuilderConfiguration := GroupDeleteableResourceBuilderConfiguration{
client: r.Client,
log: log,
@@ -101,20 +103,24 @@ func (r *TenantControlPlaneReconciler) Reconcile(ctx context.Context, req ctrl.R
tenantControlPlane: *tenantControlPlane,
DBConnection: dbConnection,
}
registeredDeleteableResources := GetDeleteableResources(groupDeleteableResourceBuilderConfiguration)
registeredDeletableResources := GetDeletableResources(groupDeleteableResourceBuilderConfiguration)
for _, resource := range registeredDeleteableResources {
for _, resource := range registeredDeletableResources {
if err := resources.HandleDeletion(ctx, resource, tenantControlPlane); err != nil {
return ctrl.Result{}, err
}
}
if hasFinalizer {
log.Info("removing finalizer")
if err := r.RemoveFinalizer(ctx, tenantControlPlane); err != nil {
return ctrl.Result{}, err
}
}
log.Info("resource deletion has been completed")
return ctrl.Result{}, nil
}