class AWS::AutoScaling::Instance


@attr_reader [String] lifecycle_state
@attr_reader [String] availability_zone_name
(e.g. ‘Healthly’ or ‘Unhealthly’).
@attr_reader [String] health_status Returns the instance health status
@attr_reader [String] launch_configuration_name
@attr_reader [String] auto_scaling_group_name
{Group#ec2_instances} instead.
If you prefer {EC2::Instance} objects you should use
end
# …
group.auto_scaling_instances.each do |instance|
group = auto_scaling.groups[‘group-name’]

If you want the instances for a single auto scaling group:
end
# …
auto_scaling.instances.each do |auto_scaling_instance|
auto_scaling = AWS::AutoScaling.new
You can enumerate ALL instances like so:
## Enumerating Auto Scaling Instances
instance.ec2_instance #=> <AWS::EC2::Instance instance_id:i-1234578>
instance.health_statue #=> :healthy
instance = auto_scaling.instances[‘i-1234578’]

to get the Auto Scaling instance.
If you know the EC2 instance id, you can use {InstanceCollection#[]}
## Getting Auto Scaling Instances
A small wrapper around an {EC2::Instance}.

def auto_scaling_group

Returns:
  • (AutoScaling::Group) -
def auto_scaling_group
  Group.new(auto_scaling_group_name, :config => config)
end

def availability_zone

Returns:
  • (EC2::AvailabilityZone) -
def availability_zone
  EC2::AvailabilityZone.new(availability_zone_name, :config => config)
end

def ec2_instance

Returns:
  • (EC2::Instance) -
def ec2_instance
  EC2::Instance.new(instance_id, :config => config)
end

def exists?

Returns:
  • (Boolean) - Returns true if there exists an Auto Scaling
def exists?
  !get_resource.auto_scaling_instances.empty?
end

def get_resource attr_name = nil

def get_resource attr_name = nil
  client_opts = {}
  client_opts[:instance_ids] = [instance_id]
  client.describe_auto_scaling_instances(client_opts)
end

def initialize instance_id, options = {}

Other tags:
    Api: - private
def initialize instance_id, options = {}
  @instance_id = instance_id
  super
end

def launch_configuration

Returns:
  • (LaunchConfiguration) -
def launch_configuration
  LaunchConfiguration.new(launch_configuration_name, :config => config)
end

def resource_identifiers

def resource_identifiers
  [[:instance_id, instance_id]]
end

def set_health status, options = {}

Returns:
  • (nil) -

Options Hash: (**options)
  • :respect_grace_period (Boolean) -- If true,

Parameters:
  • options (Hash) --
  • status (String) -- Sets the health status of an instance.
def set_health status, options = {}
  client_opts = {}
  client_opts[:instance_id] = instance_id
  client_opts[:health_status] = status
  client_opts[:should_respect_grace_period] =
    options[:respect_grace_period] == true
  client.set_instance_health(client_opts)
end

def terminate decrement_desired_capacity

Returns:
  • (Activity) - Returns an activity that represents the

Parameters:
  • decrement_desired_capacity (Boolean) -- Specifies whether or not
def terminate decrement_desired_capacity
  client_opts = {}
  client_opts[:instance_id] = instance_id
  client_opts[:should_decrement_desired_capacity] =
    decrement_desired_capacity
  resp = client.terminate_instance_in_auto_scaling_group(client_opts)
  Activity.new_from(
    :terminate_instance_in_auto_scaling_group,
    resp.activity,
    resp.activity.activity_id,
    :config => config)
end