Catch ALL THE EXCEPTIONS

This commit is contained in:
Scott Schneider 2013-12-12 10:02:29 -08:00
parent 31df80aa7c
commit bcfca89730

View file

@ -186,7 +186,10 @@ def clone_vm template, pool, folder, datastore
$logger.log('s', "[+] [#{vm['template']}] '#{vm['hostname']}' cloned from '#{vm['template']}' in #{finish} seconds")
begin
$graphite.log("vcloud.clone.#{vm['template']}", finish) if defined? $graphite
rescue
end
}
end
@ -230,6 +233,7 @@ def check_pool pool
loop do
# INVENTORY
inventory = {}
begin
base = $vsphere[pool['name']].find_pool(pool['pool'])
base.vm.each do |vm|
@ -247,27 +251,34 @@ def check_pool pool
inventory[vm['name']] = 1
end
rescue
end
# RUNNING
$redis.smembers('vmware_host_pool__running__'+pool['name']).each do |vm|
if (! inventory[vm])
$redis.srem('vmware_host_pool__running__'+pool['name'], vm)
else
if (inventory[vm])
if (pool['running_ttl'])
begin
check_running_vm(vm, pool['name'], pool['running_ttl'])
rescue
end
else
begin
check_running_vm(vm, pool['name'], '720')
rescue
end
end
end
end
# READY
$redis.smembers('vmware_host_pool__ready__'+pool['name']).each do |vm|
if (! inventory[vm])
$redis.srem('vmware_host_pool__ready__'+pool['name'], vm)
else
if (inventory[vm])
if (pool['ready_ttl'])
begin
check_ready_vm(vm, pool['name'], pool['ready_ttl'])
rescue
end
end
end
end
@ -277,16 +288,20 @@ def check_pool pool
pool['timeout'] ||= 10
if (inventory[vm])
begin
check_pending_vm(vm, pool['name'], pool['timeout'])
rescue
end
end
end
# COMPLETED
$redis.smembers('vmware_host_pool__completed__'+pool['name']).each do |vm|
if (! inventory[vm])
$redis.srem('vmware_host_pool__completed__'+pool['name'], vm)
else
if (inventory[vm])
begin
destroy_vm(vm, pool['name'])
rescue
end
end
end
@ -294,18 +309,24 @@ def check_pool pool
total = $redis.scard('vmware_host_pool__ready__'+pool['name']) +
$redis.scard('vmware_host_pool__pending__'+pool['name'])
begin
$graphite.log(
'vcloud.ready.'+pool['name'], $redis.scard('vmware_host_pool__ready__'+pool['name'])
) if defined? $graphite
rescue
end
if (total < pool['size'])
(1..(pool['size'] - total)).each { |i|
begin
clone_vm(
pool['template'],
pool['pool'],
pool['folder'],
pool['datastore']
)
rescue
end
}
end