class Chef::Knife::RackspaceFlavorList

Public Instance Methods

run() click to toggle source
# File lib/chef/knife/rackspace_flavor_list.rb, line 29
def run
  if version_one?
    flavor_list = [
      ui.color("ID", :bold),
      ui.color("Name", :bold),
      ui.color("Architecture", :bold),
      ui.color("RAM", :bold),
      ui.color("Disk", :bold),
    ]
  else
    flavor_list = [
      ui.color("ID", :bold),
      ui.color("Name", :bold),
      ui.color("VCPUs", :bold),
      ui.color("RAM", :bold),
      ui.color("Disk", :bold),
    ]
  end
  connection.flavors.sort_by(&:id).each do |flavor|
    bits = flavor.respond_to?(:bits) ? "#{flavor.bits}-bit" : ""

    flavor_list << flavor.id.to_s
    flavor_list << flavor.name
    flavor_list << bits if version_one?
    flavor_list << flavor.vcpus.to_s unless version_one?
    flavor_list << "#{flavor.ram}"
    flavor_list << "#{flavor.disk} GB"
  end
  puts ui.list(flavor_list, :uneven_columns_across, 5)
end