From 0eebcbe5625d6546b7ceb1ce2a9d8df85c993a13 Mon Sep 17 00:00:00 2001 From: Jenna Goldstrich Date: Mon, 29 Apr 2024 08:57:02 -0700 Subject: [PATCH] Lucas's final feedback --- builder/azure/arm/step_deploy_template.go | 26 +++++------------------ 1 file changed, 5 insertions(+), 21 deletions(-) diff --git a/builder/azure/arm/step_deploy_template.go b/builder/azure/arm/step_deploy_template.go index 334b6e1b..7492adb2 100644 --- a/builder/azure/arm/step_deploy_template.go +++ b/builder/azure/arm/step_deploy_template.go @@ -347,6 +347,8 @@ func (s *StepDeployTemplate) retryDeletion(ctx context.Context, resourceType str }) if err != nil { s.reportResourceDeletionFailure(err, resourceName) + } else { + s.say(fmt.Sprintf("Deleted -> %s : '%s'", resourceType, resourceName)) } return err @@ -397,38 +399,20 @@ func (s *StepDeployTemplate) listDeploymentOperations(ctx context.Context, id de // This function is called to delete the resources remaining in the deployment after we delete the Virtual Machine and the deleteNic // These resources before the VM and the NIC results in errors func (s *StepDeployTemplate) deleteDetatchedResourcesWithQueue(ctx context.Context, subscriptionId string, resourceGroupName string, resources map[string]string) error { - retryConfig := retry.Config{ - Tries: 5, - RetryDelay: (&retry.Backoff{ - InitialBackoff: 3 * time.Second, - MaxBackoff: 15 * time.Second, - Multiplier: 1.5, - }).Linear, - } var wg sync.WaitGroup wg.Add(len(resources)) for resourceType, resourceName := range resources { go func(resourceType, resourceName string) { defer wg.Done() - - err := retryConfig.Run(ctx, func(ctx context.Context) error { - log.Printf("[INFO} Attempting deletion -> %s : '%s'", resourceType, resourceName) - err := deleteResource(ctx, s.client, + s.retryDeletion(ctx, resourceName, resourceType, func() error { + return deleteResource(ctx, s.client, subscriptionId, resourceType, resourceName, resourceGroupName) - if err != nil { - log.Printf("[INFO] Couldn't delete resource %s.%s, will retry", resourceType, resourceName) - } else { - s.say(fmt.Sprintf("Deleted -> %s : '%s'", resourceType, resourceName)) - } - return err }) - if err != nil { - s.reportResourceDeletionFailure(err, resourceName) - } + }(resourceType, resourceName) }