mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
30 lines
752 B
Ruby
30 lines
752 B
Ruby
|
module Fog
|
||
|
module Compute
|
||
|
class Vsphere
|
||
|
class Real
|
||
|
|
||
|
def vm_power_on(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
|
||
|
task = vm.PowerOnVM_Task
|
||
|
task.wait_for_completion
|
||
|
# 'success', 'running', 'queued', 'error'
|
||
|
task.info.state
|
||
|
end
|
||
|
|
||
|
end
|
||
|
|
||
|
class Mock
|
||
|
|
||
|
def vm_power_on(params = {})
|
||
|
# Mock the task.info.state object
|
||
|
"success"
|
||
|
end
|
||
|
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|