Class: Eipmap::Driver
- Inherits:
-
Object
- Object
- Eipmap::Driver
- Includes:
- Logger::Helper
- Defined in:
- lib/eipmap/driver.rb
Instance Method Summary collapse
- #describe_instance_names(instance_ids) ⇒ Object
-
#initialize(ec2, options = {}) ⇒ Driver
constructor
A new instance of Driver.
- #update_association(domain, ip, expected_attrs, actual_attrs) ⇒ Object
Methods included from Logger::Helper
Constructor Details
#initialize(ec2, options = {}) ⇒ Driver
Returns a new instance of Driver.
4 5 6 7 |
# File 'lib/eipmap/driver.rb', line 4 def initialize(ec2, = {}) @ec2 = ec2 = end |
Instance Method Details
#describe_instance_names(instance_ids) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/eipmap/driver.rb', line 17 def describe_instance_names(instance_ids) id_names = {} @ec2.describe_instances(:instance_ids => instance_ids).each do |resp| resp.reservations.each do |reservation| reservation.instances.each do |instance| tag = instance..find {|t| t.key == 'Name' } id_names[instance.instance_id] = tag.value if tag end end end id_names end |
#update_association(domain, ip, expected_attrs, actual_attrs) ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/eipmap/driver.rb', line 9 def update_association(domain, ip, expected_attrs, actual_attrs) if expected_attrs[:network_interface_id] or expected_attrs[:instance_id] associate_address(domain, ip, expected_attrs, actual_attrs) else disassociate_address(domain, ip, expected_attrs, actual_attrs) end end |