Use vsphere_helper lib to find resource pools

This commit is contained in:
Scott Schneider 2013-10-01 12:19:38 -07:00
parent b130e9911a
commit 15841eb8e5

View file

@ -36,24 +36,9 @@ loop do
pools.each do |pool| pools.each do |pool|
total = 0 total = 0
datacenter = $vim.serviceInstance.find_datacenter
base = datacenter.hostFolder
path = pool['pool'].split('/')
# Locate the resource pool # Locate the resource pool
path.each do |p| datacenter = $vim.serviceInstance.find_datacenter
case base base = vsphere_helper.find_pool(pool['pool'])
when RbVmomi::VIM::Folder
base = base.childEntity.find { |f| f.name == p }
when RbVmomi::VIM::ClusterComputeResource
base = base.resourcePool.resourcePool.find { |f| f.name == p }
when RbVmomi::VIM::ResourcePool
base = base.resourcePool.find { |f| f.name == p }
else
abort "Unexpected object type encountered (#{base.class}) while finding resource pool"
end
end
base = base.resourcePool unless base.is_a?(RbVmomi::VIM::ResourcePool) and base.respond_to?(:resourcePool)
# Count the number of VMs and correlate Redis inventory # Count the number of VMs and correlate Redis inventory
inventory = {} inventory = {}