5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/provisioner/compute_action/delete.rb', line 5
def delete_vapp
super
vapp_href = compute.servers.service.vapps.detect {|v| v.name == options[:vm_name] }.href
vapp = compute.servers.service.get_vapp(vapp_href)
if vapp.on? or (vapp.off? and vapp.deployed)
logger.debug "The vApp is running, stopping it..."
vapp.service.undeploy vapp_href
logger.debug "Waiting for vApp to stop ..."
vapp.wait_for { vapp.off? }
end
vapp.wait_for { vapp.off? }
vapp.servers.entries.each { |server| server.wait_for { server.ready? } }
logger.debug "The vApp is not running now ..."
logger.debug "Deleting the vApp"
vapp.service.delete_vapp vapp_href
end
|