Class: AwsInstanceList::List

Inherits:
Object
  • Object
show all
Defined in:
lib/aws_instance_list/list.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeList

Returns a new instance of List.



7
8
9
10
# File 'lib/aws_instance_list/list.rb', line 7

def initialize
  @regions=AwsInstanceList::Region.list
  @db_list={}
end

Instance Attribute Details

#regionsObject

Returns the value of attribute regions.



5
6
7
# File 'lib/aws_instance_list/list.rb', line 5

def regions
  @regions
end

Instance Method Details

#db_listObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/aws_instance_list/list.rb', line 12

def db_list

  if @db_list.empty?

    threads = []

    regions.each do |region|

      threads << Thread.new do
        @db_list[region]=rds_db_list region: region
      end

    end

    loop do
      break if threads.count { |th| th.alive? } == 0
    end

  end

  @db_list.values.flatten(1)

end

#rds_db_list(region:) ⇒ Object



36
37
38
39
40
# File 'lib/aws_instance_list/list.rb', line 36

def rds_db_list region:
  rds=AwsInstanceList::RDS.new region: region
  rds.db_instances
  rds.db_list
end