class Chef::Knife::Ec2VpcList
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/ec2_vpc_list.rb, line 29 def run validate_aws_config! custom_warnings! vpcs_list = [ ui.color("ID", :bold), ui.color("State", :bold), ui.color("CIDR Block", :bold), ui.color("Instance Tenancy", :bold), ui.color("DHCP Options ID", :bold), ui.color("Default VPC?", :bold), ].flatten.compact output_column_count = vpcs_list.length if config[:format] == "summary" vpc_hash.each_pair do |_k, v| vpcs_list << v["vpc_id"] vpcs_list << v["state"] vpcs_list << v["cidr_block"] vpcs_list << v["instance_tenancy"] vpcs_list << v["dhcp_options_id"] vpcs_list << (v["is_default"] ? "Yes" : "No") end puts ui.list(vpcs_list, :uneven_columns_across, output_column_count) else output(format_for_display(vpc_hash)) end end
Private Instance Methods
vpc_hash()
click to toggle source
@return [Hash<Hash>]
# File lib/chef/knife/ec2_vpc_list.rb, line 62 def vpc_hash all_data = {} ec2_connection.describe_vpcs.first.vpcs.each do |v| v_data = {} %w{vpc_id cidr_block dhcp_options_id instance_tenancy is_default state}.each do |id| v_data[id] = v.send(id) end all_data[v_data["vpc_id"]] = v_data end all_data end