1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/vsphere/requests/compute/vm_power_off.rb

34 lines
832 B
Ruby
Raw Normal View History

module Fog
module Compute
class Vsphere
class Real
def vm_power_off(params = {})
params = { :force => false }.merge(params)
raise ArgumentError ":instance_uuid is a required parameter" unless params.has_key? :instance_uuid
unless vm = find_all_by_instance_uuid(params[:instance_uuid]).shift
raise Fog::Vsphere::Errors::NotFound, "Could not find a VM with instance UUID: #{params[:instance_uuid]}"
end
if params[:force] then
task = vm.PowerOffVM_Task
task.wait_for_completion
task.info.result
else
vm.ShutdownGuest
"running"
end
end
end
class Mock
def vm_power_off(params = {})
"running"
end
end
end
end
end