class Chef::Knife::VspherePoolList
Lists all known pools in the configured datacenter
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/vsphere_pool_list.rb, line 32 def run vim_connection base_folder = find_pool_folder(get_config(:folder)) traverse_folders(base_folder) end
traverse_folders(folder)
click to toggle source
# File lib/chef/knife/vsphere_pool_list.rb, line 18 def traverse_folders(folder) return if folder.is_a? RbVmomi::VIM::VirtualApp if folder.is_a? RbVmomi::VIM::ResourcePool pools = folder.path[3..-1].reject { |p| p.last == "Resources" } puts "#{ui.color("Pool", :cyan)}: " + pools.map(&:last).join("/") end folders = find_all_in_folder(folder, RbVmomi::VIM::ManagedObject) || [] folders.each do |child| traverse_folders(child) end end