Class: Awsrm::Ec2

Inherits:
Resource show all
Defined in:
lib/awsrm/resources/ec2.rb

Constant Summary collapse

FILTER_MAP =
{
  id: 'instance-id',
  instance_id: 'instance-id',
  name: 'tag:Name',
  vpc_id: 'vpc-id',
  vpc: ->(value) { { name: 'vpc-id', values: [Awsrm::Vpc.one(name: value).id] } },
  elb: ->(value) do
    { name: 'instance-id',
      values: Awsrm::Elb.one(name: value).instances.map { |i| i.instance_id } }
  end,
  alb_target_group: ->(value) do
    { name: 'instance-id',
      values: Awsrm::AlbTargetGroup.one(name: value).instance_ids }
  end
}.freeze

Constants inherited from Resource

Resource::CLIENTS, Resource::CLIENT_OPTIONS

Class Method Summary collapse

Methods inherited from Resource

check_one, filters, one

Class Method Details

.all(params) ⇒ Object



20
21
22
23
24
25
26
27
28
29
# File 'lib/awsrm/resources/ec2.rb', line 20

def all(params)
  res = ec2_client.describe_instances(
    filters: filters(params)
  )
  res.reservations.map do |reservation|
    reservation.instances.map do |instance|
      Ec2Reader.new(instance)
    end
  end.flatten
end