Class: AwsClient::RdsWrapper
Instance Attribute Summary
Attributes inherited from Wrapper
#client
Instance Method Summary
collapse
Methods inherited from Wrapper
#initialize
Instance Method Details
#all_instances ⇒ Object
26
27
28
|
# File 'lib/rds_wrapper.rb', line 26
def all_instances
@all_instances ||= get_all_instances.collect{|raw_instance| raw_instance.db_instances.flatten }.flatten
end
|
#get_all_instances ⇒ Object
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/rds_wrapper.rb', line 30
def get_all_instances
all_instances = []
pages = client.describe_db_instances
all_instances << pages.data
while pages.next_page?
pages = pages.next_page
@all_instances << pages.data
end
return all_instances
end
|
#instance_by_database_name(database_name, is_master = true) ⇒ Object
4
5
6
7
8
9
10
|
# File 'lib/rds_wrapper.rb', line 4
def instance_by_database_name(database_name, is_master = true)
if is_master
all_instances.select{|db_instance| db_instance.db_name == database_name && db_instance.read_replica_source_db_instance_identifier.nil? }.first
else
all_instances.select{|db_instance| db_instance.db_name == database_name && !db_instance.read_replica_source_db_instance_identifier.nil? }.first
end
end
|
#instance_data_by_vpc_id(vpc_id) ⇒ Object
12
13
14
|
# File 'lib/rds_wrapper.rb', line 12
def instance_data_by_vpc_id(vpc_id)
return all_instances.select{|instance| instance.db_subnet_group.vpc_id = vpc_id }
end
|
#instance_endpoint(instance) ⇒ Object
16
17
18
19
|
# File 'lib/rds_wrapper.rb', line 16
def instance_endpoint(instance)
return "UNDEFINED" if instance.nil?
return instance.endpoint.address
end
|
#instance_endpoint_for_named_database(database_name, is_master = true) ⇒ Object
21
22
23
24
|
# File 'lib/rds_wrapper.rb', line 21
def instance_endpoint_for_named_database(database_name, is_master = true)
instance = instance_by_database_name(database_name, is_master)
return instance_endpoint(instance)
end
|