Class: CfDeployer::Driver::Instance

Inherits:
Object
  • Object
show all
Defined in:
lib/cf_deployer/driver/instance.rb

Constant Summary collapse

GOOD_STATUSES =
[ :running, :pending ]

Instance Method Summary collapse

Constructor Details

#initialize(instance_obj_or_id) ⇒ Instance

Returns a new instance of Instance.



7
8
9
10
11
12
13
# File 'lib/cf_deployer/driver/instance.rb', line 7

def initialize instance_obj_or_id
  if instance_obj_or_id.is_a?(String)
    @id = instance_obj_or_id
  else
    @instance_obj = instance_obj_or_id
  end
end

Instance Method Details

#aws_instanceObject



24
25
26
# File 'lib/cf_deployer/driver/instance.rb', line 24

def aws_instance
  @instance_obj ||= AWS::EC2.new.instances[@id]
end

#statusObject



15
16
17
18
19
20
21
22
# File 'lib/cf_deployer/driver/instance.rb', line 15

def status
  instance_info = { }
  [:status, :public_ip_address, :private_ip_address, :image_id].each do |stat|
    instance_info[stat] = aws_instance.send(stat)
  end
  instance_info[:key_pair] = aws_instance.key_pair.name
  instance_info
end