How can i cancel Scheduled Hardware Upgrade by powercli?
Try like this
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.scheduledHardwareUpgradeInfo = New-Object VMware.Vim.ScheduledHardwareUpgradeInfo
$spec.scheduledHardwareUpgradeInfo.upgradePolicy = 'never'
Get-VM |
where{$_.ExtensionData.Config.ScheduledHardwareUpgradeInfo.ScheduledHardwareUpgradeStatus -eq [VMware.Vim.ScheduledHardwareUpgradeInfoHardwareUpgradeStatus]::pending } | %{
$vm.ExtensionData.ReconfigVM($spec)
}
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference
The scheduled task is done by this code:
$spec = New-Object -TypeName VMware.Vim.VirtualMachineConfigSpec
$spec.ScheduledHardwareUpgradeInfo = New-Object -TypeName VMware.Vim.ScheduledHardwareUpgradeInfo
$spec.ScheduledHardwareUpgradeInfo.UpgradePolicy = "always"
$spec.ScheduledHardwareUpgradeInfo.VersionKey = "vmx-11"
#$vm.ExtensionData.ReconfigVM_Task($spec)
Import-Csv "C:\List.csv" | %{
(Get-VM $_.Name).ExtensionData.ReconfigVM_Task($spec)
}
That's all working ok. But for some reason it requires to undo this upgrade.
Get-Task shows nothing:
Get-Task -Server <servername> -Status Queued
and im trying to understand to list perhaps all the scheduled tasks
(Get-View ScheduledTaskManager).ScheduledTask | %{ (Get-View $_).Info }
Apparently ScheduledTaskRemovedEvent only "records the removal of a scheduled task" rather than do an action!
$vm= get-vm -name <x>
$spec3 = New-Object -TypeName VMware.Vim.VirtualMachineConfigSpec
$spec3.ScheduledHardwareUpgradeInfo = New-Object -TypeName VMware.Vim.ScheduledTaskRemovedEvent
....
$vm.ExtensionData.ReconfigVM_Task($spec)
Trying to find a suitable action in doted line if there is any!
Try like this
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.scheduledHardwareUpgradeInfo = New-Object VMware.Vim.ScheduledHardwareUpgradeInfo
$spec.scheduledHardwareUpgradeInfo.upgradePolicy = 'never'
Get-VM |
where{$_.ExtensionData.Config.ScheduledHardwareUpgradeInfo.ScheduledHardwareUpgradeStatus -eq [VMware.Vim.ScheduledHardwareUpgradeInfoHardwareUpgradeStatus]::pending } | %{
$vm.ExtensionData.ReconfigVM($spec)
}
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference
Appreciated!