mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
Merge pull request #91184 from DataDog/bp/azure-vmas-isshutdown
Azure: support non-VMSS instances removal
This commit is contained in:
commit
4e975b9fc2
@ -189,6 +189,16 @@ func (ss *scaleSet) getVmssVM(nodeName string, crt azcache.AzureCacheReadType) (
|
|||||||
|
|
||||||
// GetPowerStatusByNodeName returns the power state of the specified node.
|
// GetPowerStatusByNodeName returns the power state of the specified node.
|
||||||
func (ss *scaleSet) GetPowerStatusByNodeName(name string) (powerState string, err error) {
|
func (ss *scaleSet) GetPowerStatusByNodeName(name string) (powerState string, err error) {
|
||||||
|
managedByAS, err := ss.isNodeManagedByAvailabilitySet(name, azcache.CacheReadTypeUnsafe)
|
||||||
|
if err != nil {
|
||||||
|
klog.Errorf("Failed to check isNodeManagedByAvailabilitySet: %v", err)
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
if managedByAS {
|
||||||
|
// vm is managed by availability set.
|
||||||
|
return ss.availabilitySet.GetPowerStatusByNodeName(name)
|
||||||
|
}
|
||||||
|
|
||||||
_, _, vm, err := ss.getVmssVM(name, azcache.CacheReadTypeDefault)
|
_, _, vm, err := ss.getVmssVM(name, azcache.CacheReadTypeDefault)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return powerState, err
|
return powerState, err
|
||||||
|
@ -723,6 +723,9 @@ func TestGetPowerStatusByNodeName(t *testing.T) {
|
|||||||
}
|
}
|
||||||
mockVMSSVMClient.EXPECT().List(gomock.Any(), ss.ResourceGroup, testVMSSName, gomock.Any()).Return(expectedVMSSVMs, nil).AnyTimes()
|
mockVMSSVMClient.EXPECT().List(gomock.Any(), ss.ResourceGroup, testVMSSName, gomock.Any()).Return(expectedVMSSVMs, nil).AnyTimes()
|
||||||
|
|
||||||
|
mockVMsClient := ss.cloud.VirtualMachinesClient.(*mockvmclient.MockInterface)
|
||||||
|
mockVMsClient.EXPECT().List(gomock.Any(), gomock.Any()).Return([]compute.VirtualMachine{}, nil).AnyTimes()
|
||||||
|
|
||||||
powerState, err := ss.GetPowerStatusByNodeName("vmss-vm-000001")
|
powerState, err := ss.GetPowerStatusByNodeName("vmss-vm-000001")
|
||||||
assert.Equal(t, test.expectedErr, err, test.description+", but an error occurs")
|
assert.Equal(t, test.expectedErr, err, test.description+", but an error occurs")
|
||||||
assert.Equal(t, test.expectedPowerState, powerState, test.description)
|
assert.Equal(t, test.expectedPowerState, powerState, test.description)
|
||||||
|
Loading…
Reference in New Issue
Block a user