/* Copyright (c) Edgeless Systems GmbH SPDX-License-Identifier: AGPL-3.0-only */ package client import ( "context" "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" armcomputev2 "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v2" "github.com/edgelesssys/constellation/operators/constellation-node-operator/internal/poller" ) type virtualMachineScaleSetVMsAPI interface { Get(ctx context.Context, resourceGroupName string, vmScaleSetName string, instanceID string, options *armcomputev2.VirtualMachineScaleSetVMsClientGetOptions, ) (armcomputev2.VirtualMachineScaleSetVMsClientGetResponse, error) GetInstanceView(ctx context.Context, resourceGroupName string, vmScaleSetName string, instanceID string, options *armcomputev2.VirtualMachineScaleSetVMsClientGetInstanceViewOptions, ) (armcomputev2.VirtualMachineScaleSetVMsClientGetInstanceViewResponse, error) NewListPager(resourceGroupName string, virtualMachineScaleSetName string, options *armcomputev2.VirtualMachineScaleSetVMsClientListOptions, ) *runtime.Pager[armcomputev2.VirtualMachineScaleSetVMsClientListResponse] } type scaleSetsAPI interface { Get(ctx context.Context, resourceGroupName string, vmScaleSetName string, options *armcomputev2.VirtualMachineScaleSetsClientGetOptions, ) (armcomputev2.VirtualMachineScaleSetsClientGetResponse, error) BeginUpdate(ctx context.Context, resourceGroupName string, vmScaleSetName string, parameters armcomputev2.VirtualMachineScaleSetUpdate, options *armcomputev2.VirtualMachineScaleSetsClientBeginUpdateOptions, ) (*runtime.Poller[armcomputev2.VirtualMachineScaleSetsClientUpdateResponse], error) BeginDeleteInstances(ctx context.Context, resourceGroupName string, vmScaleSetName string, vmInstanceIDs armcomputev2.VirtualMachineScaleSetVMInstanceRequiredIDs, options *armcomputev2.VirtualMachineScaleSetsClientBeginDeleteInstancesOptions, ) (*runtime.Poller[armcomputev2.VirtualMachineScaleSetsClientDeleteInstancesResponse], error) NewListPager(resourceGroupName string, options *armcomputev2.VirtualMachineScaleSetsClientListOptions, ) *runtime.Pager[armcomputev2.VirtualMachineScaleSetsClientListResponse] } type capacityPoller interface { PollUntilDone(context.Context, *poller.PollUntilDoneOptions) (int64, error) }