From 42a7d666f89bc0c92ec1afe2767cf5f77e2008ac Mon Sep 17 00:00:00 2001 From: Yaroslava Serdiuk Date: Wed, 22 May 2024 13:48:20 +0000 Subject: [PATCH] AddDeleteProvisioningRequest method to ProvRec client --- .../provisioningrequest/provreqclient/client.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/cluster-autoscaler/provisioningrequest/provreqclient/client.go b/cluster-autoscaler/provisioningrequest/provreqclient/client.go index d9612613b091..f7ead2d5b3ca 100644 --- a/cluster-autoscaler/provisioningrequest/provreqclient/client.go +++ b/cluster-autoscaler/provisioningrequest/provreqclient/client.go @@ -203,3 +203,16 @@ func ProvisioningRequestForPods(client *ProvisioningRequestClient, unschedulable } return provReq, nil } + +// DeleteProvisioningRequest deletes the given ProvisioningRequest CR using the ProvisioningRequestInterface and returns an error in case of failure. +func (c *ProvisioningRequestClient) DeleteProvisioningRequest(pr *v1beta1.ProvisioningRequest) error { + ctx, cancel := context.WithTimeout(context.Background(), provisioningRequestClientCallTimeout) + defer cancel() + + err := c.client.AutoscalingV1beta1().ProvisioningRequests(pr.Namespace).Delete(ctx, pr.Name, metav1.DeleteOptions{}) + if err != nil { + return fmt.Errorf("error deleting ProvisioningRequest %s/%s: %w", pr.Namespace, pr.Name, err) + } + klog.V(4).Infof("Deleted ProvisioningRequest %s/%s", pr.Namespace, pr.Name) + return nil +}