Class: Vaws::Aws::Ec2Describer
- Defined in:
- lib/vaws/aws/ec2_describer.rb
Instance Attribute Summary collapse
-
#term_table ⇒ Object
readonly
Returns the value of attribute term_table.
Instance Method Summary collapse
-
#initialize ⇒ Ec2Describer
constructor
A new instance of Ec2Describer.
- #set_basic_info ⇒ Object
Constructor Details
#initialize ⇒ Ec2Describer
Returns a new instance of Ec2Describer.
9 10 11 12 13 |
# File 'lib/vaws/aws/ec2_describer.rb', line 9 def initialize @ec2_client = ::Aws::EC2::Client.new @tag = 'No Name' @term_table = '' end |
Instance Attribute Details
#term_table ⇒ Object (readonly)
Returns the value of attribute term_table.
7 8 9 |
# File 'lib/vaws/aws/ec2_describer.rb', line 7 def term_table @term_table end |
Instance Method Details
#set_basic_info ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/vaws/aws/ec2_describer.rb', line 15 def set_basic_info rows = [] sg_ids = "" ec2_reservations = @ec2_client.describe_instances.reservations ec2_reservations.each do |ec2_rsvn| ec2_rsvn.instances.each do |ec2_instance| ec2_instance..each do |tag| @tag = tag.value if tag.key == 'Name' end ec2_instance.security_groups.each_with_index do |sg, index| sg_ids << "#{sg.group_id}, " sg_ids = sg_ids.gsub(/, $/, '') if index == ec2_instance.security_groups.size - 1 end instance_id = ec2_instance.instance_id instance_type = ec2_instance.instance_type public_ip = ec2_instance.public_ip_address private_ip = ec2_instance.private_ip_address state_name = ec2_instance.state.name rows << [@tag, instance_id, instance_type, public_ip, private_ip, state_name, sg_ids] sg_ids = '' end end @term_table = Terminal::Table.new :headings => ['Name', 'Id', 'Type', 'GlobalIp', 'PrivateIp', 'Status','SecurityGroupId'], :rows => rows.sort end |