class Opsicle::ManageableStack
Constants
- STOPPABLE_STATES
Attributes
cli[RW]
eips[RW]
id[RW]
opsworks_adapter[RW]
stack[RW]
vpc_id[RW]
Public Class Methods
new(stack_id, opsworks_adapter, cli=nil)
click to toggle source
# File lib/opsicle/manageable_stack.rb, line 7 def initialize(stack_id, opsworks_adapter, cli=nil) self.id = stack_id self.opsworks_adapter = opsworks_adapter self.cli = cli self.stack = @opsworks_adapter.stack(id) self.vpc_id = self.stack.vpc_id end
Public Instance Methods
deleteable_instances(layer)
click to toggle source
# File lib/opsicle/manageable_stack.rb, line 41 def deleteable_instances(layer) instances.select do |instance| instance.auto_scaling_type.nil? && instance.status == "stopped" && instance.layer_ids.include?(layer.layer_id) end end
instances()
click to toggle source
# File lib/opsicle/manageable_stack.rb, line 37 def instances @opsworks_adapter.instances_by_stack(id) end
stoppable_instances(layer)
click to toggle source
# File lib/opsicle/manageable_stack.rb, line 49 def stoppable_instances(layer) instances.select do |instance| instance.elastic_ip.nil? && STOPPABLE_STATES.include?(instance.status) && instance.layer_ids.include?(layer.layer_id) end end
transfer_eip(moveable_eip, target_instance_id)
click to toggle source
# File lib/opsicle/manageable_stack.rb, line 33 def transfer_eip(moveable_eip, target_instance_id) @opsworks_adapter.associate_elastic_ip(moveable_eip[:ip_address], target_instance_id) end