class Chef::Knife::LinodeServerList
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/linode_server_list.rb, line 31 def run $stdout.sync = true validate! server_list = [ ui.color("Linode ID", :bold), ui.color("Name", :bold), ui.color("IPs", :bold), ui.color("Status", :bold), ui.color("Backups", :bold), ui.color("Datacenter", :bold), ] dc_location = {} connection.data_centers.map { |dc| dc_location[dc.id] = dc.location } connection.servers.each do |server| server_list << server.id.to_s server_list << server.name server_list << server.ips.map { |x| x.ip }.join(",") server_list << status_to_ui(server.status) server_list << case connection.linode_list(server.id).body["DATA"][0]["BACKUPSENABLED"] when 0 ui.color("No", :red) when 1 ui.color("Yes", :green) else ui.color("UNKNOWN", :yellow) end server_list << dc_location[connection.linode_list(server.id).body["DATA"][0]["DATACENTERID"]] end puts ui.list(server_list, :columns_across, 6) end